从另一个SQL查询的结果执行插入语句的SQL查询

问题描述:

当没有找到记录时,我必须对表进行插入操作。是否有可能只用sql查询。我试过了,如果。从另一个SQL查询的结果执行插入语句的SQL查询

+0

是的,这是可能的:) – 2010-11-29 11:21:38

只需添加的状况您的“IF”的INSERT的WHERE例如

INSERT INTO People 
(FirstName,LastName,Email) 
SELECT @FirstName,@LastName,@Email WHERE @Email NOT IN (SELECT Email FROM People) 

如果电子邮件地址表中已经存在,那么在SELECT将返回没有行,因此没有插入将发生

如何:

insert into table1 
    (select * from table2 where id not in 
     (select id from table1))