如何为 MySQL 中的每个组选择第一行(按日期时间排序)?
我试过了,我得到了这个:
SELECT *
FROM `cats`
WHERE `war_id` = 0
AND `eyes_color` = 'green'
AND `id` IN
(SELECT `id` FROM
(SELECT * FROM `cats` ORDER BY `date_last_fought` DESC) AS t
GROUP BY `war_id`, `n_of_medals`)
它有点工作,但我不确定它是否是有史以来最好的。
你认为我可以简化这个吗?