Помогите с группировкой и сортировкой результатов
Добавлено: 2010-02-06 17:19:53
Привет товарищи! Прошу помощи в составлении запроса. Вроде всё просто, но чего-то не фурычит. MySQL 5.1.42 i386 OS FreeBSD 8.0
Таблицы (описания внешних ключей и возможно типов некорректные но думаю понятные, писал просто от руки потому прошу на этот момент не рычать, объединения тоже используются. Тут написано просто без них:) )
zakaz - в ней хранятся заказы с их названиями
stateTypes - типы возможных состояний заказа (принят, в процессе, исполнен и т.д.)
zakazState - сюда заносятся данные об изменении состояния заказа и время этого изменения.
Так вот хочу вывести список заказов с их последними состояниями. Т.е. группирую по zakaz.id и сортирую по убыванию zakazState.stateDate.
В итоге группировка работает а сортировка нет. Что не так?
Таблицы (описания внешних ключей и возможно типов некорректные но думаю понятные, писал просто от руки потому прошу на этот момент не рычать, объединения тоже используются. Тут написано просто без них:) )
zakaz - в ней хранятся заказы с их названиями
Код: Выделить всё
id auto_increment primary key int unsigned,
zakazTitle char(30)
Код: Выделить всё
id auto_increment primary key int unsigned,
stateTitle char(20)
Код: Выделить всё
id auto_increment primary key int unsigned,
zakazID int unsigned foreign key (zakaz.id),
stateID int unsigned foreign key (stateTypes.id),
stateDate int unsigned
Код: Выделить всё
SELECT zakaz.id,
zakaz.zakazTitle,
stateTypes.stateTitle,
zakazState.stateDate
FROM zakaz, zakazState, stateTypes
WHERE zakaz.id = zakazState.zakazID
AND zakazState.stateID = stateTypes.id
GROUP BY zakaz.id
ORDER BY zakazState.stateDate DESC
LIMIT 0 , 10