说我有这个记录
id debit credit balance 001 100 0 100 001 200 0 300 001 0 100 200 002 50 0 50 002 100 0 150 002 0 200 -50 003 50 0 50 003 500 0 550 003 0 100 450
现在我想要发生的是我想获取记录中每个id的每2条记录,它将如下所示:
id debit credit balance 001 100 0 100 001 200 0 300 002 50 0 50 002 100 0 150 003 50 0 50 003 500 0 550
是否可以使用动态sql进行此输出?如果它可以,任何人都可以帮助我,我被困在这里。谢谢。
答案 0 :(得分:1)
尝试,
;WITH Data
AS
(
SELECT *, ROW_NUMBER() OVER (PARTITION BY id ORDER BY id) MyRowNumber
FROM mytable
)
SELECT *
FROM Data
WHERE MyRowNumber IN (1,2)
更改ORDER BY
子句以获取所需的订单。