- >有三个表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
答案 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
;