sql >> Database teknologi >  >> RDS >> Sqlserver

SQL - Vælg den nyeste post, når der er en dublet

Der er et par måder at gøre det på, én måde er at bruge ROW_NUMBER sådan her:

SELECT id, type, date
FROM 
(
    SELECT tb1.id, tb1.type, tb1.Date, 
        ROW_NUMBER() OVER (PARTITION BY tb1.id ORDER BY tb1.Date DESC) AS RowNo
    FROM Table tb1
    WHERE tb1.type IN ('A','B')
) x
WHERE x.RowNo = 1

Dette returnerer rækken for hvert særskilt id værdi, der har den seneste dato.




  1. GRUPPER EFTER måned i feltet DATETIME

  2. MySQL-BEGRÆNSNING og INGEN HANDLING

  3. Sådan deaktiveres en fremmednøglebegrænsning i SQL Server (T-SQL-eksempler)

  4. Indsæt i tabel fra samlingstype oracle 12c - ORA-00902:ugyldig datatype