有人可以告诉我如何使用group by子句,如何按表中的键之一进行分组,但顶部具有最新的时间戳吗?我有多行数据,但我只想显示最新的行

最佳答案

如果每个组只需要最新的:

SELECT somefield
FROM table t1
WHERE timestamp = (SELECT MAX(timestamp)
                   FROM table t2
                   WHERE t1.somefield = t2.somefield);


或者只是最新的:

SELECT somefield
FROM table
GROUP BY somefield
ORDER BY MAX(timestamp) DESC
LIMIT 1;

10-07 17:45