[英]subtract two rows and keep the latest row with the same ID in Sql Server
Try this
DECLARE @T TABLE
(
PatId INT,
ChargeId INT IDENTITY(1,1),
TranType VARCHAR(20),
SomeText VARCHAR(20)
)
INSERT INTO @T
(
PatId,
TranType,
SomeText
)
VALUES(598,'Void','Sample 11'),
(598,'Charges','Sample 12'),
(598,'Charges','Sample 13'),
(611,'Void','Sample 21'),
(611,'Void','Sample 22'),
(611,'Charges','Sample 23')
;WITH CTE
AS
(
SELECT
RN = ROW_NUMBER() OVER(PARTITION BY PatId,TranType ORDER BY ChargeId DESC),
*
FROM @T
)
SELECT
*
FROM CTE
WHERE RN = 1
樣本輸入
樣本輸出
使用patid分區的排名功能和chargeid DESC的順序,然后從where子句中過濾掉不必要的記錄。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.