> 数据库 > SQL Server 2008 >

SqlServer-- NULL空值处理

数据库中,一个列如果没有指定值,那么值就为null,数据库中的null表示“不知道”,而不是表示没有。因此select null+1结果是null,因为“不知道”加1的结果还是“不知道”。
select * from score where english = null ;
select * from score where english != null ;都没有任何返回结果,因为数据库也“不知道”。
SQL中使用is null、is not null来进行空值判断:

select * from score where english is null ; select * from score where english is not null ;
ISNULL ( check_expression , replacement_value )



select * from TblStudent

--查询所有年龄是null的同学信息

--null值无法使用=或<>来进行比较

--unknown

--判断null值必须使用is null或者is not null

select * from TblStudent where tsage is null

select * from TblStudent where tsage=null



--查询所有年龄不是null的同学

select * from TblStudent where tsage<>null

select * from TblStudent where tsage is not null

select * from TblStudent where tsage=25

select * from TblStudent where tsage<>25



--任何值与null进行计算,得到的结果还是null

select 2000+null

(责任编辑:IT)