sybase中isnull()用法
现在有这样一个问题:
比如一个表中的a字段有几种取值:0,1,10,NULL WHERE条件过滤时 a<>10 和isnull(a,0)<>10有什么区别么 前者能得到NULL的记录么?
答案:
前者不可以,后者可以 这个没问题 测试情况如下 create table #aa( a int null , b int, ) insert #aa(a,b) values (1,1) insert #aa(a,b) values (10,10) insert #aa(a,b) values (0,0) insert #aa(b) values (20) select * from #aa where a<>10 (2 rows affected)结果:select * from #aa where isnull(a,0)<>10(3 rows affected)结果如下:a b ----------- ----------- 1 1 0 0 NULL 20a b ----------- ----------- 1 1 0 0继续…… select isnull(null,0)可以看出结果为0说明为空的时候为0