我有兩個包含相同列的表。一個是我需要用作中間數據存儲器的臨時表,另一個是我的最終表。從臨時表中,只插入新表中不存在的行。 PostgreSQL
CREATE TABLE scratch_table (
a text,
b text
);
CREATE TABLE final_table (
a text,
b text
);
scratch_table有這三行:
a | b
-----------|------------
'text a 1' | 'text b 1'
'text a 2' | 'text b 2'
'text a 3' | 'text b 3'
和final_table有兩行:
a | b
-----------|-----------
'text a 1' | 'text b 1'
'text a 4' | 'text b 4'
我需要編寫一個查詢,需要在scratch_table所有行,並插入只有那些在final_table中不存在。在final_table年底應該是:
a | b
-----------|-----------
'text a 1' | 'text b 1'
'text a 2' | 'text b 2'
'text a 3' | 'text b 3'
'text a 4' | 'text b 4'
只有該行'text a 4','text b 4'
從scratch_table插入final_table,因爲它沒有存在過。
請不要指出我使用的數字(1-4)並不表示任何順序,我只是想區分每行的數據。謝謝!
你有意在a和b列中配對嗎?只檢查一列就行嗎? – Miki 2014-09-25 22:19:55