如下表,我要查詢每個ID的最高版本以及最高版本的前一版本,該怎麼寫呢?
ID 版本 屬性
001 A red
001 B green
001 C brown
002 A red
002 B blue
想輸出:
ID 版本 屬性
001 B green
001 C brown
002 A red
002 B blue
答案:
SELECT ID,VERSION,ATTRIBUTE,RN-1 AS DD FROM
(
SELECT
ID
,VERSION
,ATTRIBUTE
,ROW_NUMBER() OVER(PARTITION BY ID ORDER BY VERSION DESC NULLS LAST) AS RN
FROM TEMP070522
)
WHERE RN<=2 ORDER BY ID