如何将来自不同模式和不同表的数据填充到其他模式到其他表

时间:2017-02-28 09:00:13

标签: sql

- >有三个表A,B和C.表A和B属于Same Schema,其中C属于其他。 - >我的病情是    表A(列1,列2,栏3),tableB的(column4,列2,栏3),.表C(列1,column5,column6)

我想通过填充表B和C的值来插入表A中的值,条件是column1值等于3

1 个答案:

答案 0 :(得分:0)

您可以使用两部分命名在模式之间移动数据。

例如:

INSERT INTO TABLE_A (Col1, Col2, Col3)
SELECT B.Col4, C.Col5, B.Col6
FROM Schema_A.Table_B AS B
INNER JOIN Schema_B.Table_C AS C
    ON B.ID = C.ID
;

当然,您可以为此添加WHERE子句,使其更具体,或者您需要做的其他事情;但是四/三/两部分的命名惯例保持不变。

您甚至可以在具有三部分命名的数据库之间执行JOIN

FROM DB1.Schema_A.Table_A AS A
INNER JOIN DB2.Schema_X.Table_X AS X
    ON A.ID = X.ID
;