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)) ; >
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)) ;
The correct way to insert something (in Oracle) based on another record already existing is by using the MERGE statement.
Please note that this question has already been answered here on SO: