零基础学SQL
上QQ阅读APP看书,第一时间看更新

5.7 关于NULL值

在数据库中,如果没有为该列赋值,而且该列没有默认值,此时查询的结果就为空值,即NULL。NULL既不表示空格,也不表示0。

例5.9 查询教师信息表(T_teacher)中教师的津贴。

        SELECT teaID ,teaName , profession,salary,pension
        FROM T_teacher

这里要查询的是教师信息表(T_teacher)中教师的津贴。其中,字段pension表示教师津贴。其查询结果如图5.8所示。

图5.8 查询教师信息表中教师的津贴

在T_teacher表中,并不是所有的教师都有津贴。从查询的结果可以看到,表示教师津贴的字段pension所在的列中,如果教师没有津贴,则显示为NULL值。

在实际的开发应用中,在显示结果中显示NULL值并不是开发人员或者用户希望看到的。很多时候,并不希望将NULL值作为显示数据出现在查询的结果当中。例如,例5.9中,如果希望看到教师的总收入,那么,对于没有津贴的老师的记录,教师的总收入将会显示为NULL值。

因此,在查询中就需要对查询结果中出现的NULL值进行处理。数据库中,都提供了对NULL值进行出来的函数。有关使用空值处理函数解决显示结果中出现NULL值的问题,可以参看10.6节。