sql >> Databasteknik >  >> RDS >> Sqlserver

hämta den senaste posten för varje kund

;WITH x AS 
(
    SELECT ID, NAME, [DATE], 
      rn = ROW_NUMBER() OVER 
      (PARTITION BY NAME ORDER BY [DATE] DESC)
    FROM @TESTABLE
)
SELECT ID, NAME, [DATE] FROM x WHERE rn = 1
  ORDER BY [DATE] DESC;

Försök att undvika reserverade ord (och vaga kolumnnamn) som [DATE] ...



  1. Hur kan jag köra bara satsen som min markör står på i SQL Server Management Studio?

  2. Hur kan jag varna mitt program om en specifik databastabell har lagts till/uppdaterats/raderat en post på den?

  3. Hur man identifierar MySQL-prestandaproblem med långsamma frågor

  4. hur man fixar odefinierad variabel:kollaboratörer i domPDF i Laravel