Tsql 仅选择日期的最后一个值?
我有一个SELECT,它返回类似于这个结果的结果(我简化了它,因为最初的SELECT相当复杂):Tsql 仅选择日期的最后一个值?,tsql,sql-server-2012,Tsql,Sql Server 2012,我有一个SELECT,它返回类似于这个结果的结果(我简化了它,因为最初的SELECT相当复杂): | UserFK | aDate | aValue| --------------------------------------------- | 1000 | 03.12.2012 10:00 | 123 | |1000 | 03.12.2012 11:00 | 456 |您可以将CTE与以下内容一起使用: WITH CTE AS ( SELECT UserFK,
| UserFK | aDate | aValue|
---------------------------------------------
| 1000 | 03.12.2012 10:00 | 123 |
|1000 | 03.12.2012 11:00 | 456 |您可以将CTE
与以下内容一起使用:
WITH CTE AS
(
SELECT UserFK, aDate, aValue,
RN = ROW_NUMBER() OVER (PARTITION BY UserFK ORDER BY aDate DESC)
FROM dbo.TableName
)
SELECT UserFK, aDate, aValue
FROM CTE
WHERE RN = 1
WITH CTE AS
(
SELECT UserFK, aDate, aValue,
RN = ROW_NUMBER() OVER (PARTITION BY UserFK ORDER BY aDate DESC)
FROM dbo.TableName
)
SELECT UserFK, aDate, aValue
FROM CTE
WHERE RN = 1