我有一個數據庫(MySQL)包含兩個表具有相同的主鍵,我已經插入數據到第一個表,但我想插入數據進入第二張桌子。使用JOIN插入與第一個表相同的Id列作爲第一個表
我已經得到的邏輯是:
[INSERT into Table2 (col1, col2, col3) Values (X1,X2,X3) WHERE Table1.id equals Table2.id]
我似乎無法找到任何工作原理是這樣的與PHP使用INSERT語句。
任何幫助表示讚賞!
我有一個數據庫(MySQL)包含兩個表具有相同的主鍵,我已經插入數據到第一個表,但我想插入數據進入第二張桌子。使用JOIN插入與第一個表相同的Id列作爲第一個表
我已經得到的邏輯是:
[INSERT into Table2 (col1, col2, col3) Values (X1,X2,X3) WHERE Table1.id equals Table2.id]
我似乎無法找到任何工作原理是這樣的與PHP使用INSERT語句。
任何幫助表示讚賞!
這聽起來像是你真的想更新第二張表,而不是插入它。 INSERT
用於創建新的行,UPDATE
用於修改現有的行。
您可以通過在UPDATE
語句中使用JOIN
來完成此操作。
UPDATE Table2 AS t2
JOIN Table1 AS t1 ON t1.id = t2.id
SET t2.col1 = t1.x1, t2.col2 = t1.x2, t2.col3 = t1.x3
的http://stackoverflow.com/questions/5178697/mysql-insert-into-multiple-tables-database-normalization – ub3rst4r
你的問題可能重複說*「我想** **插入數據。 ..在以後的時間「*但你的邏輯表達爲(無效的)SQL查詢表明你想更新**現有的行(在以後的時間)。哪一個是你想要實現的正確邏輯? – axiac