我有兩個表A(column1,column2)
和B(column1,column2)
。用另一個數據填寫表格
如何確保A(column1)中的值不包含在B(column1)內並將其插入到此列中。
我的查詢會是這樣:
insert into B.column1 values()
where
...
我想從A.column1
要我把什麼where
子句中的數據來完成B.column1?
我有兩個表A(column1,column2)
和B(column1,column2)
。用另一個數據填寫表格
如何確保A(column1)中的值不包含在B(column1)內並將其插入到此列中。
我的查詢會是這樣:
insert into B.column1 values()
where
...
我想從A.column1
要我把什麼where
子句中的數據來完成B.column1?
Insert Into B(column1)
Select A.Column1
From A
Where A.Column1 not in (Select Column1 From B)
我會使用MINUS命令,並選擇從A(列1),其不是在B(列1)的所有行,然後選擇INTO結果分爲B表。
insert into B
select a.column1, a.column2 from a
left join b
on a.column1 = b.column1
where b.column1 is null
看來,這不適用於Oracle 9i ..它給我錯誤'關鍵字VALUES缺席'我該如何處理? – mounaim
@mounaim:9i不支持現代風格明確的'JOIN'語法(請參閱:爲什麼不應該使用過時版本的另一個原因) –
是的,這是一個可憐的人,你是對的;)所以我必須這樣做'NOT IN'我想.. – mounaim