2010-12-08 98 views
0

返回最新記錄幫助。如果我有一個像下面的數據:TSQL:需要從表

CustID, CustDate, CustCode 
=========================== 
123  12/1/10  a 
123  12/2/10  b 
456  12/3/10  c 
456  12/4/10  d 
789  12/5/10  3 

我怎麼會寫,將返回的最新記錄爲表中該客戶的查詢?

結果應該是..

CustID, CustDate, CustCode 
=========================== 
123  12/2/10  b 
456  12/4/10  d 
789  12/5/10  3 

請幫我寫查詢..

回答

1
SELECT 
    CustId, CustDate, CustCode 
FROM 
    MyTable 
WHERE 
    NOT EXISTS 
    (
    SELECT * FROM MyTable AS a_MyTable 
    WHERE a_MyTable.CustId = MyTable.CustId 
     AND a_MyTable.CustDate > MyTable.CustDate 
) 
0
Select CustId, CustDate, CustCode 
From Table As T 
Where CustDate = (
        Select Max(T1.CustDate) 
        From Table As T1 
        Where T1.CustID = T.CustID 
        )