【发布时间】:2019-07-08 02:26:43
【问题描述】:
我想获取当前行中的下一行值。就像LEAD() 在最新的 SQL Server 中所做的那样。但我目前使用的是 SQL Server 2000。而且我没有任何其他选择。
实际情况是:
表格规则:
# HeadNo | NextHeadNo | NoFrom
-----------+------------+------------
1 AA | AB | 1
2 AB | AC | 1
3 AC | AX | 1
4 AD | AE | 1 ****and so on
我想根据HeadNo 上的下一个值更新NextHeadNo 值。
所以根据数据Row-3 应该得到更新AX ➪ AD。
我有大约 1000 条记录要更新一次。
我希望任何人都可以帮助我。
【问题讨论】:
-
您可以在 tb1.id = tb2.id+1 上加入同一张表(自连接).....
-
@SQLCoder: 实际上表中没有任何 Id 列
-
您知道要根据哪一列选择下一个值吗?
-
您需要有一个列进行排序,您将根据该列选择下一条记录。
-
@SQLCoder:如示例所示,取
ORDER BY Head_No的下一个值
标签: sql-server sql-server-2000 lag lead