首页 > 数据库技术 > 详细

mysql : 使用不等于过滤null的问题

时间:2020-09-15 17:13:15      阅读:75      评论:0      收藏:0      [点我收藏+]

table A 有字段name,age。

 

id name     age

1   null       11

2   jack       12

3   tony      13

 

select * from table A where name != ‘tony‘

查询结果只有id = 2 的记录;

分析原因:因为 NULL 不是一个「值」,而是「没有值」。「没有值」不满足「值不等于1」这个条件。所以 mysql 尽量不要默认值是 NULL。

要查询出来id = 1的记录有两种方案:

方案一:

          select * from table A where name != ‘tony‘  or name is null;

方案二:

        select * from table A where IFNULL(name,‘‘)  !=  ‘tony‘

mysql : 使用不等于过滤null的问题

原文:https://www.cnblogs.com/enchaolee/p/13673171.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!