gpt4 book ai didi

sql-server-2008 - SQL 服务器 : update multiple rows with different values

转载 作者:行者123 更新时间:2023-12-02 08:45:23 25 4
gpt4 key购买 nike

我正在尝试用不同的值更新多行,但不需要匹配任何特定的 ID。

当然,两个不同表上的两列将具有相同数量的记录。

例如,我有一个表 Table1Column1 以及一个包含该表中列表 10 项的查询(ID 是不连续)。

ID  ItemName
1 Item1
2 Item2
4 Item3
5 Item4
6 Item5
8 Item6
9 Item7
14 Item8
18 Item9
23 Item10

现在,我有另一个表 Table2Column2,我想用上面的 10 个项目更新它们。

这也有不同的 ID,但 ItemName 是空白/空值。

ID   ItemName
301 NULL
321 NULL
323 NULL
331 NULL
333 NULL
335 NULL
336 NULL
355 NULL
377 NULL
388 NULL

因此,我正在寻找一个查询,我可以在其中使用 Table1 中的那 10 个项目更新 Table2Column2,以及结果看起来像这样

ID   ItemName
301 ITem1
321 ITem2
323 ITem3
331 ITem4
333 ITem5
335 ITem6
336 ITem7
355 ITem8
377 ITem9
388 ITem10

请帮忙。提前致谢。

最佳答案

WITH CTE1
AS (SELECT *,
Row_number() OVER (ORDER BY ID) AS RN
FROM Table1),
CTE2
AS (SELECT *,
Row_number() OVER (ORDER BY ID) AS RN
FROM Table2)
UPDATE CTE2
SET ItemName = CTE1.ItemName
FROM CTE2
JOIN CTE1
ON CTE1.RN = CTE2.RN

SQL Fiddle

关于sql-server-2008 - SQL 服务器 : update multiple rows with different values,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12885468/

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