表資料如下,我想用名稱選擇更新日期的最小值。如果相鄰名稱相同,則需要合并名稱。并選擇按更新日期升序排列的記錄
Name UpdatedDate
L 05-May-2022
S 09-May-2022
S 09-May-2022
A 10-May-2022
A 15-May-2022
L 16-May-2022
S 17-May-2022
S 19-May-2022
K 01-May-2022
預期產出
Name UpdatedDate
K 01-May-2022
L 05-May-2022
S 09-May-2022
A 10-May-2022
L 16-May-2022
S 17-May-2022
uj5u.com熱心網友回復:
假如說:
- 您的日期始終按升序排列并且
- 您的 SQL Server 版本支持 LEAD 和 Lag 函式
你可以試試這個:
SELECT NAME, UPDATEDDATE
FROM
(SELECT NAME, UPDATEDDATE, LAG(NAME, 1, 'DEFAULTVALUE') OVER (ORDER BY UPDATEDDATE) AS LAGNAME) T
WHERE T.NAME <> T.LAGNAME
這使用滯后來根據 Name 列查找哪些行屬于同一“組”,然后取第一行,該行也應該具有假設 1 的最早日期。
uj5u.com熱心網友回復:
使用分組依據。Select Name, UpdatedDate from YourTable Group By Name, UpdatedDate
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/486979.html
上一篇:選擇僅包含2種產品的結果
