2013-05-08 51 views
1

我正在構建一個工作負載跟蹤系統,我有一個表,目前已經列出了所有要完成的任務(每個都有一個唯一的ID),但也有所有更新datestamp,這樣我就可以追蹤更新狀態需要多長時間。選擇條件最後更新行

我的兩難是對於我只想查詢最新更新的表單,當前選擇查詢分別顯示原始任務和更新的任務。

換句話說,我想要做的只是選擇一個任務,因爲ID是最後一個具有相同任務號的任務(與ID不同,在更新時會有重複)

所以,如果我有:

ID Task Date 
1 A 4/30/13 
2 B 5/2/13 
3 A 5/3/13 

,該表僅顯示:

ID Task Date 
3 A 5/3/13 
2 B 5/2/13 

我怎樣才能做到這一點?我想我錯過了一些簡單的...

+0

我不知道訪問SQL,但在SQL服務器中,我會使用一個子查詢返回任務與主查詢匹配的最大ID(或具有最大日期的ID)。也許這會讓你走上正確的道路。 – EvilBob22 2013-05-08 20:50:55

回答

4

即使在Access中,也有多種方法可以實現此查詢。下面是使用in使用子查詢的方式:

select t.* 
from t 
where t.id in (select MAX(id) as maxid 
       from t 
       group by task 
      ) 
order by task 

子查詢發現所有任務的最大的ID。然後它返回原始表中匹配這些ID的行。

+0

這正是我想弄明白的,謝謝你的迴應 - 簡單而甜蜜。 – Dm3k1 2013-05-08 21:39:01

+0

@ Dm3k1。 。 。我很高興能夠提供幫助。乾杯。 – 2013-05-08 21:39:56