2013-04-30 70 views
-1

我正在嘗試返回具有與最新時間戳記關聯的筆記的任務。儘管此查詢有效,但它並不會始終返回最新的時間戳。還有另一種方法來做到這一點?Mysql - 最近的時間戳記多個記錄

SELECT DISTINCT tasks.TaskID, tasks.desc, tasks.startdate, tasks.active, notes.note,   max(notes.NoteDate) 
FROM tasks INNER JOIN notes ON tasks.TaskID=notes.NoteID 
WHERE notes.NoteDate >= curdate() 
GROUP BY tasks.TaskID 
+0

可能重複[獲取具有最大值列的行](http://stackoverflow.com/questions/121387/fetch-the-row-which-has-the-max-value-for-a-column) – Barmar 2013-04-30 16:37:36

回答

0

試試沿着線:

SELECT tasks.TaskID, tasks.desc, tasks.startdate, tasks.active, notes.note,   notes.NoteDate 
FROM tasks INNER JOIN notes ON tasks.TaskID=notes.NoteID 
order by NoteDate Desc 
limit 1 

更新,如果你想多行(例如,其中在最後一天notedate)的

SELECT tasks.TaskID, tasks.desc, tasks.startdate, tasks.active, notes.note,   notes.NoteDate 
FROM tasks INNER JOIN notes ON tasks.TaskID=notes.NoteID 
where notes.NoteDate > date_sub(current_date(),interval 1 day) 
order by NoteDate Desc 
+0

問題那就是我試圖返回多個記錄,而不僅僅是一個。我需要列出所有最近更新的任務。 – T0w3ntuM 2013-04-30 16:41:25

+0

最近的意思是什麼? – 2013-04-30 16:41:42

+0

今天更新,如果有幫助。所以我想要一份今天添加了筆記的任務列表。另外,NoteID是一個時間戳字段,而不僅僅是一個日期。 – T0w3ntuM 2013-04-30 16:55:12