gpt4 book ai didi

行之间的 SQL 差异

转载 作者:太空狗 更新时间:2023-10-30 01:40:19 25 4
gpt4 key购买 nike

我有一个像这样的 SQL 2008 数据库表

name      score
-----------------------
steve 207
steve 205
steve 200
steve 139

我想得到行之间的差异。 eqn = [行 - (行 + 1)]所以我理想情况下希望它是,

steve 2   //207 - 205
steve 5 //205 - 200
steve 61 //200 - 139
steve 139 //139 - 0

最好的方法是什么?谢谢!

最佳答案

这是一种方法

with cte as
(SELECT
ROW_NUMBER() OVER (PARTITION BY table.name ORDER BY id) row,
name,
score
FROM table)
SELECT
a.name ,
a.score - ISNULL(b.score,0)
FROM
cte a
LEFT JOIN cte b
on a.name = b.name
and a.row = b.row+1

关于行之间的 SQL 差异,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6299950/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com