0
下面將讓我從一個參照表t2
值我想插入或者用表t1
更新現有的元組:在MySQL中,如何更新現有行的某些列並從參考表中插入新行?
SELECT
id, col1
FROM
t2
LEFT OUTER JOIN
t1
ON
t2.id=t1.id
如果有id
一個元組t1
已經存在,它應該有更新從t2
中選擇的值。如果在t1
中不存在帶有id
的元組,則應該插入(id, col1)
,並將其他列設置爲默認值。
如何有效地做到這一點?
在第一個查詢中是't1.id = t2.id,'必要的嗎? – qazwsx 2012-07-18 17:23:10
在更新中?不,只需要放置你想要更新的字段。在加入?是的,它是必需的 – 2012-07-18 17:26:16
在第一個查詢中,你不需要'更新t1 SET t1.col1 = t2.col1 WHERE t1.id = t2.id FROM t1 LEFT OUTER JOIN t2 ON t1.id = t2.id WHERE t2.id不是NULL'? – qazwsx 2012-07-18 17:27:01