Oracle語句中多個字段同時in

2021-06-21 09:26:55 字數 790 閱讀 2261

今天遇到乙個資料庫問題,a,b,c三表。

需要從a表中查詢部分資料

select a.a1, a.a2 from a where ...

從b中刪除對應的資料,即刪除

select b.* from b b, (select a.a1, a.a2 from a where ...) awhere a.a1=b.b1 and a.a2=b.b2;

部分從網上查的第乙個方法,改寫得

delete b from b b, (select a.a1, a.a2 from a where ...) awhere a.a1=b.b1 and a.a2=b.b2;

大約不是oracle的方法,執行報錯,也許是其他方言,暫時記錄,順便請大神指教這個語句對應的方言

之後查到第二個方法,帖子給出的是update語句

sql server 2000寫法:

update ybyk set ybyk2=b.ybname from ybyk a,fjsybfybzb b where a.ybid=b.ybdm and a.ybid like '9%';

oracle寫法:

update ybyk a set a.ybyk2=(select b.ybname from fjsybfybzb b where a.ybid=b.ybdm) where a.ybid like '9%';

暫作記錄,以備後用

最後查得in可以作用於多個字段,即

delete from bb where (b1,b2) in (select a1,a2 from a where ...成功

oracle同時新增多個字段 案例

運算元據庫 oracle 10g 有時候有需要在oracle資料庫中新增多個欄位的需求,案例如下 alter table my workflow add state varchar2 2 default 0 not null,name varchar2 100 not null,age number...

into多個字段,if語句

create or replace procedure sfgl syncjm temp p czr in varchar2,res str out varchar2,res code out varchar2 is 同步臨時表 功能 遍歷減免費用臨時表,先根據應繳使用者 學年 費用型別去更新應繳費...

oracle中distinct多個字段

select distinct t.f resume id t.f resume status t.f resume status,t.f resume status,t.f recruit channel,t.f small channel id from css.t resume info t ...