【发布时间】:2011-01-21 00:57:19
【问题描述】:
在 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
【问题讨论】:
-
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 '
-
更新 YourTable SET Col1 = OtherTable.Col1, Col2 = OtherTable.Col2 FROM (SELECT ID, Col1, Col2 FROM other_table) AS OtherTable WHERE OtherTable.ID = YourTable.ID
标签: sql sql-server tsql select