mysql - SQL 语法错误 near except

标签 mysql sql database mysql-error-1064

我正在尝试选择在城市的所有分支机构都拥有帐户的人。 (使用 SQL 查询)

SELECT A.customId 
FROM accountholder as A 
WHERE NOT EXISTS ( 
                   (SELECT name 
                    FROM branch 
                    WHERE city='LA') 
EXCEPT (SELECT C.branch 
        FROM accountholder AS B, account AS C 
        WHERE B.accountnumber = C.accountnumber 
              AND A.customId = B.customId)); 

现在我得到了:

ERROR 1064 (42000): 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 'EXCEPT (SELECT C.branch FROM accountholder AS B, account AS C WHERE B.accountnumber=' at line 1

而且我没有看到问题。我是瞎了还是傻了?

感谢您的帮助。

最佳答案

MySQL 不使用EXCEPT。使用 NOT IN .

SELECT A.customId 
FROM accountholder as A 
WHERE branch NOT IN ( 
(SELECT name FROM branch WHERE city='LA') 
AND branch NOT IN (SELECT C.branch FROM accountholder AS B, account AS C WHERE B.accountnumber = C.accountnumber AND A.customId = B.customId)); 

关于mysql - SQL 语法错误 near except,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27151155/

相关文章:

java - 如何避免在 jOOQ 中对值进行引号

mysql - 在 OSX 上安装 MySQL 在端口 3307 上运行

MySQL/MariaDB 等式为 null 不起作用

mysql - 在join中插入哪里,代码困惑

sql - MySQL查询帮助(半唯一结果)

sql-server - 如果仅在 SQL Server 中的主文件组中创建所有分区,分区是否有益

python - 我如何在 Django 中执行此数据库模型?

java - 在 android 中使用 ORMLite 保存一个集合类

php - 使用PDO登录时,PHP检查数据库中的用户名和密码

java - 即使我指定了计数查询,也无法使用具有动态排序和/或分页的 native 查询