我们可以使用连接操作并同时进行限制吗?我想根据数据库的另一个数据库(示例中称为DB2)中的两个表创建一个数据库(在本例中称为DB1)的表,其中一个列在其他列上有特定条目时填充(在例如“性别”栏中的“4”)。 - >如果是,那该怎么办?同时加入操作和限制
两个数据库位于同一台服务器上,而DBMS相同。 DB2中基于table1的ID1和ID2; ID1和名称基于DB2中的table2。
Here's我尝试过了,不过我不确定是否它的工作原理和/或它的最好办法是使用I'm从DB1的观点产地:
INSERT INTO table3
(id1,
id2,
NAME)
SELECT t1.id1,
t1.id2,
t2.NAME
FROM db1.table1 t1
LEFT JOIN db1.table2 t2
ON t1.ID1=t2.ID1
WHERE gender = 4;
或者是正确的(更好)与和?:
INSERT INTO table3
(id1,
id2,
NAME)
SELECT t1.id1,
t1.id2,
t2.NAME
FROM db1.table1 t1
LEFT JOIN db1.table2 t2
ON t1.ID1=t2.ID1
AND gender = 4;
性别是t1还是t2列?当离开时加入了巨大的差异... – jarlh
性别是表2中的一列 – AbsoluteBeginner
不应该ON谓词读取ID1 = ID2? – Serg