我們可以使用連接操作並同時進行限制嗎?我想根據數據庫的另一個數據庫(示例中稱爲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