空 (NULL) 值表示数值未知。空值不同于空白或零值。没有两个相等的空值。比较两个空值或将空值与任何其它数值相比均返回未知,这是因为每个空值均为未知。
空值通常表示未知、不可用或将在以后添加的数据。
如果数据出现空值,则逻辑运算符和比较运算符有可能返回 TRUE 或 FALSE 以外的第三种结果 UNKNOWN。需要三值逻辑是导致许多应用程序出错之源。
在写入数据的时候,空字符串'' 也是一个确定的值,所以就算你定义了 NOT NULL 也可以被写入。
例如:tran_heating_id_!=5 想筛选出所有tran_heating_id_不是5的客户信息,但是这样并不能筛出 tran_heating_id_为null的客户信息(因为null是值不确定的情况),需要用is null筛选。