MySQL isNull返回空,但='Null'返回结果0

问题描述 投票:0回答:1

当我尝试查询时:

SELECT * 
FROM my_table
where my_column is Null 

它返回0个结果。该列是整数。

但是当我这样做时:

SELECT * 
FROM my_table
where my_column = 'Null' 

它返回预期结果。有趣的是,返回的行的值为0。

在我做之前

update my_table set my_column = Null where my_column = '0';

它曾经返回'0'。

这可能是什么原因,以及使它们为NULL而不是'NULL'或'0'或0的可能解决方案。

这让我发疯,我花了4个多小时来解决这个问题。我的表到处都有这些无意义的值。因此,如果有某种方法可以解决我的表而不是单列的问题,那就更好了。

sql string null isnull
1个回答
0
投票

因为您正在使用字符串null 'null'而不是null来更新列>

使用以下语句更新您的专栏

update my_table set my_column = Null where my_column is Null;

然后运行您的第一个查询,它将为您提供结果。

SELECT * 
FROM my_table
where my_column is Null 

这里是example

© www.soinside.com 2019 - 2024. All rights reserved.