gpt4 book ai didi

mysql - 比较 NULL 和 INT

转载 作者:行者123 更新时间:2023-11-29 05:58:50 25 4
gpt4 key购买 nike

我正在尝试提取两个字段不匹配的所有行。我知道空值本质上是“未知数”,因此已采取措施将空值定义为 0。如下图。

Select ifnull(field1, 0), ifnull(field2, 0) 
from table
where field1 != field2

谁能告诉我为什么这不起作用?即使我觉得我使用 ifnull(field1, 0) 正确地将空值定义为“0”,我仍然没有得到任何结果。

最佳答案

它不起作用,因为这就是 NULL 值在关系数据库中的工作方式。几乎所有比较都返回 NULL,这被视为 false。

此外,您在 SELECT 中的操作不会影响 WHERE。这些字段仍然来自原始表。

更重要的是你能做什么。最简单的方法是使用 NULL 安全比较:

where not field1 <=> field2

关于mysql - 比较 NULL 和 INT,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46809254/

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