我有一個查詢將行插入MySQL表基於查詢
SELECT A.a, A.b, A.c
FROM A
LEFT JOIN X ON A.a = X.x
WHERE X.x IS NULL
其中找到表項,這些已在表X中沒有相應的條目我怎樣才能插入此查詢的結果爲表X?如果我只有幾個項目,我會做
INSERT INTO X(xa, xb, xc)
VALUES ('a1', 'b1', 'c1'), ('a2', 'b2', 'c2')
(順便說一句:列d設定爲AUTO_INCREMENT;這是否做正確的事情,如果我運行上面同樣,列E,F,?。 ..,h有默認值;我相信這些將相應設置)。
這不會很難通過導出,爲Excel中的每一行編寫單獨的SQL片段並執行每個;我問這主要是爲了更好地學習SQL。
(當然我真正的表有更多的領域和各種併發症,但我認爲這種簡化就足夠了。)
+1:擊敗我29秒! – 2010-10-28 19:03:47
我不相信這會起作用,因爲select會引用他插入的表。 – Cfreak 2010-10-28 19:05:52
@Cfreak:'X'不是同一張表 – 2010-10-28 19:15:50