2010-12-08 8 views
0

Si j'ai des données comme suit:tsql: besoin d'aide pour retourner le dernier enregistrement d'une table

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 

Comment pourrais-je écrire la requête qui renverrait le dernier enregistrement pour ce client dans ce tableau?

Résultat devrait être ..

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

S'il vous plaît me aider à écrire requête ..

Répondre

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 
        ) 
Questions connexes