2016-01-10 159 views
2

最新記錄我有一個MySQL數據庫結構如下:的MySQL只選擇記錄

custodian | counta | countc | countc | total | date 
------------------------------------------------------- 
ed  | 1  | 2  | 3  | 6  | 1/1/2016 
ed  | 2  | 3  | 5  | 10 | 1/2/2016 
ed  | 2  | 3  | 6  | 11 | 1/3/2016 
ed  | 1  | 3  | 5  | 9  | 1/4/2016 
fred  | 1  | 2  | 3  | 6  | 1/1/2016 
fred  | 2  | 3  | 5  | 10 | 1/2/2016 
fred  | 2  | 3  | 6  | 11 | 1/3/2016 
fred  | 1  | 3  | 5  | 9  | 1/4/2016 

如何返回最新的記錄保管人?由於表格每小時更新一次,因此我一直在玩這個條件where date >= DATE_SUB(NOW(),INTERVAL 59 MINUTE),但是如果我在一個小時內更新腳本兩次,我會爲每個保管人返回多個結果。

有什麼建議嗎?

回答

2

您需要結合ORDER BYLIMIT

SELECT * 
FROM yourTableName 
WHERE custodian = 123 
ORDER BY `date` DESC 
LIMIT 1 
+0

剛剛在我之前!在相關說明中,我很驚訝「LIMIT」不是語法高亮的。 – worldofjr

0

你可以試試這個

SELECT * FROM tbl ORDER BY date DESC LIMIT 1 

最近的日子會是當decendingly訂購的第一條記錄,並限制選擇1種手段你只能得到最新的紀錄。