sql >> Databasteknik >  >> RDS >> Sqlserver

hur får man de distinkta posterna baserat på maximalt datum?

Använd funktionen ROW_NUMBER() och PARTITION BY-klausul. Något så här:

SELECT Id, Name, Date FROM (
    SELECT *, ROW_NUMBER() OVER (PARTITION BY Id ORDER BY Date desc) AS ROWNUM 
    FROM [MyTable]
) x WHERE ROWNUM = 1


  1. Skillnad mellan två datum i MySQL

  2. Bästa MySQL-prestandajusteringsverktyget?

  3. Välj att alla poster inte uppfyller vissa villkor i en sammanfogad tabell

  4. PostgreSQL - GROUP BY-klausul