Oracle 插入如果不存在语句

2021-12-05 00:00:00 oracle

插入 OPT (email, campaign_id) values('mom@cox.net',100)哪里不存在(选择 * from OPT where (email ="mom@cox.net" and campaign_id =100));

<块引用>

错误报告:SQL 错误:ORA-00933:SQL 命令未正确结束00933. 00000 - SQL 命令未正确结束"*原因:
*动作:

如果 Oracle 中不存在新行,如何插入新行?

解决方案

insert into OPT (email, campaign_id)选择 'mom@cox.net',100从双重不存在的地方(选择*来自OPTwhere (email ='mom@cox.net' and campaign_id =100));

insert into OPT (email, campaign_id) values('mom@cox.net',100)
where not exists( select * from OPT where (email ="mom@cox.net" and campaign_id =100)) ;

Error report: SQL Error: ORA-00933: SQL command not properly ended 00933. 00000 - "SQL command not properly ended" *Cause:
*Action:

how to insert a new row if it doesn't exists in Oracle?

解决方案

insert into OPT (email, campaign_id) 
select 'mom@cox.net',100
from dual
where not exists(select * 
                 from OPT 
                 where (email ='mom@cox.net' and campaign_id =100));

相关文章