2017-03-19 25 views
0

如果新表中不存在列,我想将表的行移动到另一个表。 说我想移动登录信息,并且我检查电子邮件。这将是这样的以文本形式:Mysql - 如果行不存在于新表中,则从一个表移动到另一个表

移动行从表1,如果电子邮件犯规符合表2中的任何电子邮件行(如果它在表2中已存在什么都不做)。 目前,我有这个代码犯规检查是否在新表中存在的电子邮件,但我希望能够到:

INSERT INTO logins(firstname, lastname, email, departmentid) 
SELECT firstname, lastname, email, departmentid FROM temp_uploads WHERE tempuploadid = ? 

我是不是要连接两个表中的select语句?或者可以以更好的方式完成?

回答

0

你能尝试folllowing查询:

INSERT INTO logins(firstname, lastname, email, departmentid) 
SELECT firstname, lastname, email, departmentid 
FROM temp_uploads 
WHERE tempuploadid = ? 
AND NOT EXISTS (
    SELECT * FROM logins WHERE email = temp_uploads.email 
); 
+0

太感谢你了。像魅力一样工作 – Munik

相关问题