gpt4 book ai didi

sql - 如何使用列中的 MAX 值更新列以添加自动增量?

转载 作者:行者123 更新时间:2023-12-04 18:18:05 26 4
gpt4 key购买 nike

我有一张像这样的 table :

CREATE TABLE #TempTable
(
COLUMN1 INT,
COLUMN2 INT
)

INSERT INTO #TempTable
(
COLUMN1,
COLUMN2
)
VALUES
(1, 5),
(2, 4),
(3, NULL),
(4, 2),
(5, NULL)

我要更新 COLUMN2使用列中的 MAX 值添加自动增量。

我试过这个查询:
DECLARE @maxNumber        INT = 0;
SELECT @maxNumber = ISNULL(MAX(COLUMN2), 0) + 1
FROM #TempTable

SELECT @maxNumber

CREATE SEQUENCE [tempSqu] AS [int] START
WITH @maxNumber INCREMENT BY 1

UPDATE #TempTable
SET COLUMN2 = NEXT VALUE FOR [tempSqu]
WHERE COLUMN2 IS NULL

DROP sequence [tempSqu]

输出:
COLUMN1     COLUMN2
--------------------
1 5
2 4
3 6
4 2
5 7

最佳答案

尝试这样的事情:

UPDATE tmp
SET tmp.COLUMN2 = @maxNumber, @maxNumber = @maxNumber + 1
FROM #TempTable tmp
WHERE tmp.COLUMN2 IS NULL

关于sql - 如何使用列中的 MAX 值更新列以添加自动增量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60053299/

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