use*_*925 3 sql sql-server sql-server-2008 sql-server-2008-r2 sql-server-2012
我正在使用Sql server 2008.i有一个包含以下列的表,
Id,
Name,
Date
Run Code Online (Sandbox Code Playgroud)
这个表包含多个相同id.i的记录想要获得具有最大date的独特id.我可以为此编写sql查询吗?
使用ROW_ NUMBER()函数和PARTITION BY子句.像这样的东西:
SELECT Id, Name, Date FROM (
SELECT *, ROW_NUMBER() OVER (PARTITION BY Id ORDER BY Date desc) AS ROWNUM
FROM [MyTable]
) x WHERE ROWNUM = 1
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
24898 次 |
| 最近记录: |