gpt4 book ai didi

MYSQL IF NOT EXISTS/WHERE NOT EXISTS 错误

转载 作者:行者123 更新时间:2023-11-29 08:23:19 30 4
gpt4 key购买 nike

我在 SQL 查询中使用了一个简单的 IF NOT EXISTS/WHERE NOT EXISTS 语句(我都尝试过),但我总是收到 mysql 错误,不知道为什么。尝试使用不同的引号,检查我的 MySQL 服务器版本等。

这些是我使用的语句

IF NOT EXISTS (SELECT * FROM kurs_users WHERE kurs_users.uid = 'someuser') 
BEGIN
INSERT INTO kurs_users(uid) VALUES ('someuser')
END

INSERT INTO kurs_users 
VALUES ('', 'someuser')
WHERE NOT EXISTS (SELECT * FROM kurs_users WHERE uid = 'someuser');

错误消息:

You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'WHERE NOT EXISTS (SELECT * FROM kurs_users WHERE uid = 'someuser')' at line 1

最佳答案

values 语句不允许使用 where 子句。将其更改为 insert 。 。 。选择。但是,在 MySQL 中,如果没有 from,就不能有 where 子句,因此请使用子查询:

INSERT INTO kurs_users 
select col1, col2
from (select '' as col1, 'someuser' as col2) t
WHERE NOT EXISTS (SELECT * FROM kurs_users WHERE uid = 'someuser');

我还鼓励您在 insert 语句中明确列出这些列:

INSERT INTO kurs_users(UnnamedColumn, UserName) 
select col1, col2
from (select '' as col1, 'someuser' as col2) t
WHERE NOT EXISTS (SELECT * FROM kurs_users WHERE uid = 'someuser');

关于MYSQL IF NOT EXISTS/WHERE NOT EXISTS 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18696604/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com