mssql sqlserver null数据值简介


摘要:
下文将详细说明null(空值)在sqlserver数据库中的作用,如下所示:
实验环境:sql server 2008 R2



null数据简介:

null在sqlserver表示未知。通常被大家称之为为”空值”。
null值不等于任何数值,sqlserver中null为”unknown”。



null数据举例应用:

   ---查询列值为null的方法
   select * from tableName where [列名]  is null 
   ---查询列值为非null的方法
   select * from tableName where [列名]  is not null 

   ------------null 同0比较方法
   if (null >1)   ---此条件不会成立
   begin
     print 'test'  
   end 

   if not (null >1)   ---此条件不会成立
   begin
     print 'test'
   end 

     if (null =null)   ---此条件不会成立
   begin
     print 'test'  
   end 

   if not (null =null)   ---此条件不会成立
   begin
     print 'test'
   end 
  -------null涉及的所有比较运算都会失效-------------------

  -------null子查询注意事项:
     select * from tableName where [列名] not  in
         (select [列名2] from tableNameNew)
  --如果 “[列名2] ”中 存在null,则会返回0行记录
  select * from tableName where [列名] not in ('a','b',null)
  ---会变转换为
  select * from tableName where [列名] !='a'
    and  [列名] !='b'  and [列名] !=null  
 


null注意事项:
1.NULL值同任何值进行比较运算都会返回false
2.获取某一列值为null并返回所在行数据的方法,需采用
is null
3.在实际表设计中,需避免列值为null