[英]Delete Sql Query with case statement in oracle11.2
我當前的代碼是create table p(px int primary key, createDate date,updateDate date);
insert into p values(1,'23-JUL-15','25-JUL-15');
insert into p values(2, '23/JUN/2015','25-JUL-15');
insert into p values(3, '23/May/2015','25/May/15');
insert into p values(4, '23/April/2015','25/April/2015');
insert into p values(5, '23/March/2015','25/March/2015');
我的上一個查詢是delete from p where add_months(sysdate, - 3) > p.updateDate;
但是,現在我想使用if if else。 如果updateDate為null,我想與createDate列一起使用。因此,現在我使用case語句。我當前的查詢是DELETE FROM p WHERE add_months(sysdate, - 3) > case Updatedate when updatedate IS NULL else updateDate end;
但是現在我發現了錯誤。我可以對case語句使用delete sql查詢嗎?
嘗試這個
DELETE FROM p WHERE add_months(sysdate, - 3) >
case when updatedate IS NULL then createDate else updateDate end
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.