gpt4 book ai didi

MySQL - 检查两个值是否相等或均为 NULL?

转载 作者:可可西里 更新时间:2023-11-01 06:31:54 26 4
gpt4 key购买 nike

如果我想比较两个值,我可以这样写:

SELECT * FROM table1
JOIN table2 ON table1.col = table2.col;

我注意到,如果 table1.coltable2.col 都是 NULL,这将不起作用。所以我更正后的查询如下所示:

SELECT * FROM table1
JOIN table2 ON
(table1.col = table2.col)
OR
(table1.col IS NULL AND table2.col IS NULL);

这是比较两个值的正确方法吗?如果两个值都是 NULL,有没有办法说两个值相等?

最佳答案

比较 NULL = NULL 将返回 NULL,这是不正确的,因此连接不会成功。你可以使用 NULL safe operator <=>

SELECT * FROM table1
JOIN table2 ON table1.col <=> table2.col;

关于MySQL - 检查两个值是否相等或均为 NULL?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32526395/

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