欢迎来到Doc100.Net免费学习资源知识分享平台!
您的位置:首页 > 程序异常 >

sql isunll 在什么情况下使用,该如何处理

更新时间: 2014-01-05 02:17:12 责任编辑: Author_N1

 

SQL isunll 在什么情况下使用
isnull(col1,'')='3' 
如上面的语句,
这个语句在什么情况下使用
越详细越好,希望大神们  能给我定一个思考的方向。
--参考方法--
 isnull(col1,'')='3' 

其实关键是 isnull函数的用法,就是在col1这个列有null值的时候,那么就是空串,如果不是null,那么就是col1列的值,是否等于'3'

也就是:

case when col1 is null then '' else col1 end = '3'
--参考方法--
以上語句跟以下語句是一樣的效果:col1='3'
--参考方法--
当你发现表中可能由于某些情况,比如存有null,或者因为外联结导致null,但是又想给一个实际的值,以免对NULL的操作无效时,可以使用inull。上面的语句一般是说,如果col1没有数据,那么我就取3这个“字符串”,不是数值。不过你那个好像对于null是没有结果的哦,因为你用了''作为默认值
--参考方法--
NULL值是不能进行运算或者拼字符串的。
通常在数据库设计的时候,如果没有给定默认值,再向数据库中插入数据是就会出现NULL值。
为了显示或者运算或是操作不出错,就会用到ISNULL(字段,‘xxx’)函数,就是如果是NULL,就把他转化成xxx。
--参考方法--
给你个测试结果,你执行一下脚本,然后琢磨琢磨,或许就会理解了。

create table #test(
id int null,
charname varchar(10) null
)

insert into #test
select 1,'A' 

insert into #test (id)
select 3

select * from #test
select *,ISNULL(charname,'XX') from #test 
select *,ISNULL(charname,'XX') from #test  where ISNULL(charname,'')='XX'


08版本的SQL执行结果
上一篇:上一篇
下一篇:下一篇

 

随机推荐程序问答结果

 

 

如对文章有任何疑问请提交到问题反馈,或者您对内容不满意,请您反馈给我们DOC100.NET论坛发贴求解。
DOC100.NET资源网,机器学习分类整理更新日期::2014-01-05 02:17:12
如需转载,请注明文章出处和来源网址:http://www.doc100.net/bugs/t/7980/
本文WWW.DOC100.NET DOC100.NET版权所有。