SQL Server教程:NULL值
一、NULL值
数据库中逻辑值类型有三种:TURE 、FALSE、UNKNOW,其中NULL就代表UNKNOW,NULL和0是有本质区别的,不能混为一谈。
现在来看一个例子:我想要查询未参加考试的学生,下意识就会想:“查询成绩为0的学生”。这是不正确,你不能保证参加考试的学生成绩就没有得0分的。应该理解为:未参加考试的学生没有成绩,但不是0分
查询要求中可能涉及到NULL,例如:查询stu_grade为NULL的所有行
一般会直接写出sql语句
SELECT * FROM 表名 WHERE stu_grade=NULL
虽然sql语句不报错,但以上语句是查不出任何结果的。
这时应考虑是否进行逻辑判断,sql语句如下:
SELECT * FROM 表名 WHERE stu_grade IS NULL