我需要将表A的列a的值拷贝到表B的列b中。表A的列a到表B的列b的SQL拷贝值
此语句是否正确?
UPDATE
TableA,
TableB
SET
TableB.b = TableA.a
WHERE
TableA.Id = TableB.Id
我需要将表A的列a的值拷贝到表B的列b中。表A的列a到表B的列b的SQL拷贝值
此语句是否正确?
UPDATE
TableA,
TableB
SET
TableB.b = TableA.a
WHERE
TableA.Id = TableB.Id
如果目的地的列是空的,你并不需要匹配的东西只是用这个
INSERT INTO DestinationTb ([ColumnName])
SELECT [ColumnNameToTransfer] FROM [SourceTable]
如果不只是加入
update A
SET A.Columnname = B.ColumnNameToTransfer
from DestinationTb A
INNER JOIN
SourceTable B
ON
--HERE ADD YOUR MATCHING FOR EXAMPLE
A.ID = B.ID;
或使用子查询
UPDATE DestinationTb
SET ColumnName = (
SELECT ColumnNameToTransfer
FROM SourceTable
--HERE ADD YOUR MATCHING FOR EXAMPLE
WHERE SourceTable.id = DestinationTb.id
);
非常感谢! – Parchita
一种解决方案是使用FROM
和JOIN
背后UPDATE
UPDATE A
SET A.a= B.b
FROM TableA A
JOIN TableB B ON A.ID = B.ID
这是正确的,如果你有这些表中对应的ID。告诉我们更多关于你的结构! –
您正在使用哪些DBMS? –
INSERT INTO DESTINATION_TABLE SELECT * FROM SOURCE TABLE? – rmjoia