У меня есть следующий запрос, который делает то, что я хочу, но я подозреваю, что это можно сделать без подзапроса:
SELECT *
FROM (SELECT *
FROM 'versions'
ORDER BY 'ID' DESC) AS X
GROUP BY 'program'
Что мне нужно, так это сгруппировать по программе, но возвращать результаты для объектов в версиях с наивысшим значением «ID».
По моему прошлому опыту, такой запрос должен работать в MySQL, но по какой-то причине это не так:
SELECT *
FROM 'versions'
GROUP BY 'program'
ORDER BY MAX('ID') DESC
Я хочу, чтобы сделал, чтобы MySQL сначала выполнял ORDER BY, а затем GROUP BY, но он настаивает на выполнении сначала GROUP BY, а затем ORDER BY. то есть это сортировка результатов группировки вместо группировки результатов упорядочивания.
Конечно, невозможно написать
SELECT * FROM 'версии' ORDER BY 'ID' DESC GROUP BY 'program'
Спасибо.