buwuliao

在写 SQL 条件语句是经常用到 不等于‘!=’的筛选条件,此时要注意此条件会将字段为 null 的数据也当做满足不等于的条件而将数据筛选掉。

1、原始数据和表结构

CREATE TABLE `test01` (
  `ID` bigint(18) NOT NULL AUTO_INCREMENT,
  `NUM` bigint(18) DEFAULT NULL COMMENT \'NUM\',
  `NAME` varchar(250) DEFAULT NULL COMMENT \'名称\',
  `created` datetime DEFAULT NULL,
  `modified` datetime DEFAULT NULL,
  PRIMARY KEY (`ID`)
) ENGINE=InnoDB AUTO_INCREMENT=5 DEFAULT CHARSET=utf8;

数据:

2、测试SQL 和结果

测试结果

3、可以发现:

  • 不等于:会过滤为空(特别注意);
  • 等于:精确匹配没问题
  • 大于等于:空不会大于,没问题
  • 小于等于:空也会小于(要注意)。

分类:

技术点:

相关文章: