Мы только что перенесли базу данных с сервера MySQL 5.0 на сервер 5.5, и простые запросы вроде этого больше не работают, как ожидалось:
SELECT * FROM (
SELECT *
FROM tblTable
ORDER BY fldField ASC
) tmp
GROUP BY fldField
Внутренний запрос по-прежнему возвращает правильно упорядоченный набор записей, но группа по больше не выбирает первую запись из этого набора.
Переключение порядка на DESC также не влияет, так что, предположительно, группа не переключилась на выбор последней записи.
Насколько я могу судить, group by фактически просто выбирает первую запись в соответствии с порядком их создания, а не с порядком фактического набора записей. Если это имеет смысл?
Я не могу найти какой-либо отчет об ошибке или заметку об этом, так что надеюсь, у кого-нибудь есть идеи, пожалуйста?