SQL 空值的处理

空值,即“不知道”、“不存在”或“无意义”的值,SQL 中允许取空值。

一、空值的产生

1.属性的值暂时未知

例如:外连接时的空值,新建元组时未填写的属性值

2.属性不应该有值

例如:缺考学生的成绩应为空,因此可以通过 update 将其修改为空

3.不便于填写的值

例如:某些隐私内容

二、空值的判断

判断一个值是否为空,用 is null 或 is not null 来判断。

“是空” ,而不是“等于空”

三、空值的约束条件

可以通过 nul null 约束条件,指定属性或域不能取空值。

四、空值的运算

  • 空值与另一个值的算术运算结果为空值
  • 空值与另一个值的比较运算结果为 unknown

参考

  • 数据库系统概论