gpt4 book ai didi

mysql - MySQL 中 MINUS 子句的替代方案?

转载 作者:行者123 更新时间:2023-12-02 02:59:19 24 4
gpt4 key购买 nike

我正在 MySQL 中处理一些查询,我发现 minus 子句不受支持。

MySQL 中的 minus 子句有其他选择吗?如何用一个查询中的值减去另一个查询中的值?

select * from A
minus //This returns a syntax error in the query format
select * from B;
MySQL 也不接受

difference except 子句

最佳答案

一个LEFT JOIN仅当它基于两个表的所有相应列的相等性而不仅仅是主键的相等性时,这才是您想要的替代方案:

SELECT A.* 
FROM A LEFT JOIN B
ON A.col1 <=> B.col1 AND A.col2 <=> B.col2 AND .....
WHERE B.primarykeycolumn IS NULL

我使用了NULL安全运算符 <=>检查 NULL 是否相等值(value)观也。
您还可以使用 NOT EXISTS :

SELECT A.* FROM A
WHERE NOT EXISTS (
SELECT 1 FROM B
WHERE A.col1 <=> B.col1 AND A.col2 <=> B.col2 AND .....
)

关于mysql - MySQL 中 MINUS 子句的替代方案?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60356940/

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