SQLinfo.ru - Все о MySQL

Форум пользователей MySQL

Задавайте вопросы, мы ответим

Вы не зашли.

#1 27.06.2011 03:31:26

madrabbit
Участник
Зарегистрирован: 27.06.2011
Сообщений: 2

сортировка по динамическим полям

есть таблица товаров items

id, name, price

есть таблица его характеристик values

pid, name, value

items связана c values one-to-many по items.id=values.pid

нужно сортировать эту связь по значениям определенных характеристик (name - название/id value - значение)

по одному сортировать впринципе можно примерно так

select * from `items` as i
left join `values` as v on (i.`id` = v.`pid`)
where v.`name` = 'year'
order by v.`value` desc

по двум (например year и size) уже не понятно как, потому что значения двух разных характеристик будут в одном столбце.
пробовал в order ставить if - нереально долго работает

возможно в корне структура неверна? как это еще можно организовать с учетом приемлемой производительности?

Неактивен

 

#2 28.06.2011 11:44:43

paulus
Администратор
MySQL Authorized Developer and DBA
Зарегистрирован: 22.01.2007
Сообщений: 6757

Re: сортировка по динамическим полям

Приведите, пожалуйста, пример данных и то, как Вы хотите сортировать. Описание
на словах читал дважды — и не понял sad

Неактивен

 

Board footer

Работает на PunBB
© Copyright 2002–2008 Rickard Andersson