我有如下表:選擇通過最新的時間戳
+-------+--------+---------------------+ | score | user | scrap_time | +-------+--------+---------------------+ | 200 | Bob | 2015-09-08 11:46:17 | +-------+--------+---------------------+ | 210 | Alice | 2015-09-08 11:46:17 | +-------+--------+---------------------+ | 240 | Bob | 2015-09-08 11:48:00 | +-------+--------+---------------------+ | 260 | Alice | 2015-09-08 11:48:01 | +-------+--------+---------------------+
我想所有的分數每個用戶是有最新scrap_time
而忽略了舊的。
例子:
+-------+--------+---------------------+ | score | user | scrap_time | +-------+--------+---------------------+ | 240 | Bob | 2015-09-08 11:48:00 | +-------+--------+---------------------+ | 260 | Alice | 2015-09-08 11:48:01 | +-------+--------+---------------------+
我一直在試圖想出一個查詢,像這樣的:
select * from scores where date(scrap_time) = (select max(scrap_time) from scores);
但是,這並沒有給我我需要的結果。
怎麼會把'Bob'也包含在預期中結果集? –
因爲我需要每個用戶的最後一個分數 – Zibar
'select score,max(scrap_time),user from scores' – Saty