0
我有一個表,其中包含這些列;如何根據日期列獲取最後3個不同的價格?
- CODE
- 價格
DATE
所以我想要做的是讓每個ID按日期列排序最後3 不同價值。基本上每個ID最近3個不同的價格。
此外,表中還有一個ID列。這是表格的主要關鍵。
編輯:正如ughai所說,DISTINCT不適用於row_number。
我有一個表,其中包含這些列;如何根據日期列獲取最後3個不同的價格?
DATE
所以我想要做的是讓每個ID按日期列排序最後3 不同價值。基本上每個ID最近3個不同的價格。
此外,表中還有一個ID列。這是表格的主要關鍵。
編輯:正如ughai所說,DISTINCT不適用於row_number。
Select t.id , c.Price
from TableName t
CROSS APPLY (
SELECT TOP 3 Price
FROM TableName s
WHERE s.ID = t.ID
ORDER BY [DATE] DESC
) c (Price)
GROUP BY t.id , c.Price
指定樣本數據和預期結果 – Mansoor
我認爲ID不是主鍵? –
您似乎允許重複的日期值。如果在少於3個不同日期值的情況下有超過3個不同的價格值,應得到什麼結果? –