如果不存在...插入

时间:2014-05-17 16:11:49

标签: mysql

我为我的平台构建了一个帐户系统,而且我遇到了MySQL的几个问题。我想要做的基本上只有在没有重复的情况下INSERT INTO,所以我尝试了以下查询:

IF NOT EXISTS (SELECT email FROM accounts_list WHERE email = "chucky.modo@yahoo.com")
INSERT INTO accounts_list (email) VALUES ("chucky.modo@yahoo.com")

但不幸的是它不起作用。你能指出我做错了什么吗?我已经在StackOverflow上阅读了一些答案,但没有人帮助我。

1 个答案:

答案 0 :(得分:1)

将列电子邮件作为主键或在其上创建唯一索引,然后使用:

INSERT INTO accounts_list (email)
VALUES ("chucky.modo@yahoo.com")
ON DUPLICATE KEY UPDATE email = email