【发布时间】:2016-01-12 09:35:20
【问题描述】:
我想添加一列,其中包含每个组中上一行的 id。
示例:
Product ID
Orange 1
Orange 2
Orange 3
Orange 4
Apple 5
Apple 6
Apple 7
Grapes 8
Grapes 9
期望的输出:
Product ID
Orange 1
Orange 1
Orange 2
Orange 3
Apple 5
Apple 5
Apple 6
Grapes 8
Grapes 8
谢谢!
【问题讨论】:
-
我也想要。到目前为止,您尝试过什么?
-
我使用了 MIN([Id) OVER (PARTITION BY Description) 但这只是获取每个组中的第一行。
-
由于 LAG 在上述版本中不可用,您必须找到一种解决方法。提示:前一个 ID 是所有较小 ID 中最高的 ID。如果 ID 没有间隙,那么您甚至可以从每个 ID 中减去一个,每个产品的最小 ID 除外。
-
@ohhzumm 检查我的答案,也许这就是你要找的。span>
标签: sql sql-server sql-server-2008 sql-server-2005 sql-server-2008-r2