2014-12-03 70 views
1

比方說,我在MySQL數據庫的表與下面的列限制天的記錄數和計數

employee, status, work, start_date

考慮到start_date欄是日期和時間。

如果我做

SELECT employee, status, work, start_date from table_name WHERE DATE(date) >= CURDATE()-10 

這會給我記錄從當前date - 10天。在這種情況下,我可能會根據數據獲得1條記錄到100條記錄。

我只需要10個記錄基於日期/時間(例如,如果有今天的10名員工即開始工作,那麼我應該得到的只是今天的記錄,而不是10天記錄)

我怎樣才能做到這一點?

+0

所以...你正在尋找'LIMIT 10'? – Wolph 2014-12-03 15:28:40

回答

2

你的意思是你想要十個最近的條目?您可以添加ORDER BY以設置結果返回的順序,並添加LIMIT以減少結果總數。

SELECT employee, status, work, start_date from table_name 
WHERE DATE(date) >= CURDATE()-10 
ORDER BY date DESC 
LIMIT 10 
+0

感謝它的工作! – 2014-12-03 18:08:47

1

你需要使用order by的起始日期和limit

SELECT employee, status, work, start_date 
from table_name 
order by start_date desc 
limit 10