首先空值不能用来进行比较,空值不能跟任何东西进行加、减、乘、除运算,如果这样做了,返回值还将是空值。
所以在写sql的时候要牢记空值的特性。如果想要查询哪些行不存在某个特定的值时一定要考虑到存在null的情况,如上,一定要显式声明,即 or is null,否则这空值null的记录不会包括在结果集中。在工作中遇到的写法如下:
table_name.IsTuPlc <>'1' OR table_name.IsTuPlc IS NULL
首先空值不能用来进行比较,空值不能跟任何东西进行加、减、乘、除运算,如果这样做了,返回值还将是空值。
所以在写sql的时候要牢记空值的特性。如果想要查询哪些行不存在某个特定的值时一定要考虑到存在null的情况,如上,一定要显式声明,即 or is null,否则这空值null的记录不会包括在结果集中。在工作中遇到的写法如下:
table_name.IsTuPlc <>'1' OR table_name.IsTuPlc IS NULL