无法对某些选定的列进行分组

时间:2016-05-10 02:59:25

标签: sql greatest-n-per-group

我试图在他购买的最后一个日期vcan上为每个UserID提取所选列。

所以我认为这是错误的,因为我不能按DT

进行分组
Purchased, A , S

谢谢!

1 个答案:

答案 0 :(得分:1)

如果您正在使用SQL Server或任何其他支持窗口功能的dbms,您可以使用ROW_NUMBER

WITH Cte AS(
    SELECT *,
        rn = ROW_NUMBER() OVER(PARTITION BY UserID ORDER BY Date DESC)
FROM aramdb
WHERE Purchased > 0 
)
SELECT 
    UserID, Date, Purchased, A , S
FROM Cte
WHERE rn = 1