在开发过程中用了
select * from table where status not in(1,2,3)
但是结果不展示列位null的数据产生了严重的bug
在使用MySQL的NOT IN语句时,如果找不到NULL值,可能是因为NULL值在比较中具有特殊性质。NULL值不等于任何其他值,包括它自己。因此,使用NOT IN语句时,如果列表中包含NULL值,则查询不会返回任何结果。
解决此问题的方法之一是使用IS NULL或IS NOT NULL运算符来检查NULL值。以下是一个示例查询:
SELECT * FROM table_name WHERE column_name IS NULL;
或者:
SELECT * FROM table_name WHERE column_name IS NOT NULL;
这样可以确保NULL值被正确地包含或排除在结果中。
据上:
最后改成了 select * from table where status not in(1,2,3) or status is null 可以获取所有数据