sql >> Base de Datos >  >> RDS >> Sqlserver

Eliminación de valores duplicados basados ​​en una sola columna de la tabla

Aquí es donde la función de ventana row_number() es útil:

SELECT s.siteName, s.siteIP, h.date
FROM sites s INNER JOIN
     (select h.*, row_number() over (partition by siteName order by date desc) as seqnum
      from history h
     ) h
    ON s.siteName = h.siteName and seqnum = 1
ORDER BY s.siteName, h.date