Use la función ROW_NUMBER() y la cláusula PARTITION BY. Algo como esto:
SELECT Id, Name, Date FROM (
SELECT *, ROW_NUMBER() OVER (PARTITION BY Id ORDER BY Date desc) AS ROWNUM
FROM [MyTable]
) x WHERE ROWNUM = 1
Use la función ROW_NUMBER() y la cláusula PARTITION BY. Algo como esto:
SELECT Id, Name, Date FROM (
SELECT *, ROW_NUMBER() OVER (PARTITION BY Id ORDER BY Date desc) AS ROWNUM
FROM [MyTable]
) x WHERE ROWNUM = 1
Cómo agregar un encabezado y pie de página a un informe en Microsoft Access
No se puede acceder a una instancia de SQL Server 2008 R2 de forma remota
Cómo crear una tabla usando GUI en SQL Server - Tutorial de SQL Server / T-SQL Parte 37
Índice SQL DROP, tabla DROP y declaraciones de base de datos DROP explicadas con ejemplos