内容来自 DOC[ https://q.houxu6.top/?s=在SQL Server中,如何从SELECT更新?](https://q.houxu6.top/?s=在SQL Server中,如何从SELECT更新?)
在 SQL Server 中,可以使用 INSERT.. SELECT
语句向表中插入行:
INSERT INTO Table (col1, col2, col3)
SELECT col1, col2, col3
FROM other_table
WHERE sql = 'cool'
是否也可以使用 SELECT
更新表?我有一个临时表包含这些值,想使用这些值更新另一个表。也许像这样:
UPDATE Table SET col1, col2
SELECT col1, col2
FROM other_table
WHERE sql = 'cool'
WHERE Table.id = other_table.id
是的,也可以使用 SELECT
更新表。上述代码片段中的 UPDATE
语句将根据 other_table
中满足条件 sql = 'cool'
的行更新 Table
表。通过指定 WHERE
子句中的条件 Table.id = other_table.id
,可以确保只更新与另一个表中具有相同 id
值的行。
更新表 Table_A 中的列 col1 和 col2,将其值设置为与 Some_Table 表(别名为 Table_A)中满足条件 col3 = 'cool' 的行对应的 Other_Table 表(别名为 Table_B)中的列 col1 和 col2 的值。更新方式为使用 INNER JOIN 连接两个表,连接条件为 Table_A.id = Table_B.id。
UPDATE
Table_A
SET
Table_A.col1 = Table_B.col1,
Table_A.col2 = Table_B.col2
FROM
Some_Table AS Table_A
INNER JOIN Other_Table AS Table_B
ON Table_A.id = Table_B.id
WHERE
Table_A.col3 = 'cool'
标签:col2,更新,Server,SQL,Table,col1,id,SELECT
From: https://www.cnblogs.com/xiaomandujia/p/17770723.html