我正在尝试构建一个 SQL 查询,该查询将采用一组行并对所有行上的一个字段重新编号,从它们都与会话 ID 匹配的位置开始。
例如更改前:
SessionID | LineNumber | LineContents
----------------------------------------------
74666 | 1 | example content
74666 | 2 | some other content
74666 | 3 | another line
74666 | 4 | final line
更改后(用户已删除第 2 行,因此“LineNumber”值已更新以反映新编号(即“第 3 行”现在已变为“第 2 行”等):
SessionID | LineNumber | LineContents
----------------------------------------------
74666 | 1 | example content
74666 | 2 | another line
74666 | 3 | final line
因此,以非正确的语法反映这一点将是沿着这些思路
i = 0;
UPDATE tbl_name
SET LineNumber = i++;
WHERE SessionID = 74666;
在没有运气的情况下搜索了很多,任何帮助都很棒:)