比方說,你有如下表(這裏感興趣的列binid):MySQL的選擇最後一個唯一出現
id datetime agid binid status
1 2013-02-01 11:03:49 0 25 1
2 2013-02-01 11:03:53 0 25 1
3 2013-02-01 11:04:21 0 26 1
4 2013-02-01 11:04:23 0 26 0
5 2013-03-01 11:04:26 0 25 0
6 2013-03-01 11:04:30 0 36 0
7 2013-03-01 11:04:34 0 36 1
8 2013-03-01 11:04:35 0 36 1
9 2013-03-01 11:04:36 0 36 1
10 2013-03-01 11:04:39 0 36 0
11 2013-03-01 11:04:41 0 36 1
13 2013-03-01 11:04:50 0 25 1
14 2013-03-01 11:04:53 0 26 1
15 2013-03-01 11:15:25 0 25 1
16 2013-03-01 11:15:30 0 25 0
17 2013-03-01 11:15:39 0 23 1
18 2013-03-01 11:15:43 0 26 1
我如何可以提取發生在一定的時間內每個binid最後出現的?
這是我在用至今:
SELECT * FROM (reports ORDER BY datetime ASC)
WHERE datetime >= TIMESTAMP('2013-03-01')
GROUP BY binid
但它返回第一個分身來代替。我怎樣才能返回每個唯一binid的最後一次出現?
如果你改變ASC到DESC會發生什麼? – 2013-03-01 19:39:15
'ORDER BY ID DESC'或'ORDER BY datetime DESC'是否有效? – 2013-03-01 19:40:43