Tre*_*rey 5 mysql insert conditional-statements
我在将条件放入 MySQL 时遇到一些困难。我一直在尝试创建一个查询,该查询将遍历所有标题为电子邮件的列,如果它存在,我想做这样的事情:如果电子邮件存在,我希望它正确获取该列的现有值并添加php 变量 $ 更正它。但是,如果电子邮件不存在,那么我希望它添加一条新记录,其中值 $email 到 email 列中,并将 $ Correct 值添加到 Correct 列中。任何帮助将不胜感激。
这是我所拥有的但不起作用的:
IF (SELECT * FROM facebookqs WHERE email = '$email' > 0)
UPDATE facebookqs SET correct = correct + '$correct' where email ='$email'
Else
Insert into facebookqs (email, correct) VALUES ('$email', '$correct')
Run Code Online (Sandbox Code Playgroud)
假设email有UNIQUE约束,您应该使用INSERT ... ON DUPLICATE KEY UPDATE
INSERT INTO facebookqs (email, correct) VALUES (\'$email\', \'$correct\')\nON DUPLICATE KEY UPDATE correct = correct + \'$correct\'\nRun Code Online (Sandbox Code Playgroud)\n\n另请参阅我对其他堆栈溢出问题的回答:INSERT IGNORE 与 INSERT \xe2\x80\xa6 ON DUPLICATE KEY UPDATE
\n