Всем привет! Помогите плз дотумкать...
Есть сайт картинок, для каждой картинки в базе должны храниться 10 основных цветов и к каждому цвету процент (сколько этот цвет в процентах занимает места на картинке).
Вот вопрос... у кого какие идеи, как лучше всего хранить такие данные, чтобы потом проще вытаскивать с сортировкой по процентам картинки с одним цветом...
Поясняю.. например, пользователь указал что ему нужны картинки, которые содержат зеленый цвет.... нужно выбрать из базы картинки, содержащие цвет 00FF00 и отсортировать так, что чем больше процент этого цвета на картинке, тем выше в выдаче она находится...
22.11.2012, 14:51
Webmaster
Marf7, ну так если всего 10 основных цветов, то в чем вопрос?
заводите табличку в которой хранятся записи в виде
id картинки или файл картинки
цвет
процент
т.е. на каждую картинку у вас будет 10 записей в такой таблице
22.11.2012, 14:59
alexdrob
А можно таблицу с картинками.
Таблицу с цветами.
Таблицу связи, id картинки, id цвета, процент. В которой первичным ключом будет id картинки и цвета.
05.12.2012, 07:41
Itoku
Если возможно, храните файлы без базы прямо на диске, инфу о цветах можно хранить в названии файла.
07.12.2012, 22:09
Marf7
Спасибо всем, особое спасибо Webmaster, воспользовался именное его советом... удобно выбирать... Но есть одно но...
Мне нужно сортировать по процентам... вот какой запрос для выборки у меня получился...
SELECT * FROM `pic` INNER JOIN `col` ON ((`col`.`image_id` = `pic`.`id`) AND (`col`.`color` = 'FF00FF'))
Но попробовал сюда дописать сортировку, но что-то сортирует не правильно, может не правильно пишу что-то? Есть идеи?
SELECT * FROM `pic` INNER JOIN `col` ON ((`col`.`image_id` = `pic`.`id`) AND (`col`.`color` = 'FF00FF')) ORDER BY `col`.`procent` ASC
08.12.2012, 09:23
Arks
все правильно написано. Это со значениями что-то неправильно.
08.12.2012, 10:15
Marf7
Спасибо ;) Там была моя ошибка с типами в базе...
10.12.2012, 12:05
hostme
можно сделать как две табличку, справочник и описание, чтобы потом не путаться
14.02.2015, 14:53
Johncena
ент (сколько этот цвет в процентах занимает места на картинке).
Вот вопрос... у кого какие идеи, как лучше всего хранить такие данные, чтобы потом проще вытаскивать с сортировкой по процентам картинки с одним цветом...
Поясняю.. например, поль