也来说说SQL语句中NULL的真实含义计算机等级考试

文章作者 100test 发表时间 2010:01:01 08:31:22
来源 100Test.Com百考试题网


  测试表:testnull(id varchar(32))
  数据库:Sybase ASA11.0
  行数据(), (NULL)
  数据库选项ansinull为true(也是ASA数据库的默认选项)时,
  0select * from testnull where id = null
  0select * from testnull where id != null
  结果均为空
  0select * from testnull where id is null
  结果为(NULL)
  0select * from testnull where id is not null
  结果为()
  当ansinull为false时,
  0select * from testnull where id = null
  结果为(NULL)
  0select * from testnull where id != null
  结果为()
  从上述结果来看,NULL值确实是一个有争议的东西,但是,毫无疑问,ansinull对NULL的定义是精确的,即不能对NULL值进行等于或不等判断,无论是等还是不等,其结果都为false.
  而统一的is null, is not null的含义则显然是明确的,NULL is null恒为真,非NULL is null恒为假。
  再看看在Oracle中的结果:源:www.examda.com
  SQL

相关文章


解开CPU性能下降之谜计算机等级考试
“修复”CPU二级缓存计算机等级考试
MSSQLServer:改变数据库对象所有者计算机等级考试
MsSQL通用数据库创建程序(源码 Demo Exe)计算机等级考试
也来说说SQL语句中NULL的真实含义计算机等级考试
SQLPLUS命令的使用大全计算机等级考试
解析常见的远程访问服务问题计算机等级考试
LoadRunner中winsocket协议学习计算机等级考试
彩显色彩失真的检修计算机等级考试
澳大利亚华人论坛
考好网
日本华人论坛
华人移民留学论坛
英国华人论坛