SQLServer数据库中如何使用ISNULL函数-创新互联

SQLServer数据库中如何使用ISNULL函数,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。

你所需要的网站建设服务,我们均能行业靠前的水平为你提供.标准是产品质量的保证,主要从事网站建设、成都网站设计企业网站建设、手机网站制作设计、网页设计、品牌网站设计、网页制作、做网站、建网站。创新互联公司拥有实力坚强的技术研发团队及素养的视觉设计专才。

SQLServer数据库ISNULL函数怎么应用

1.利用ISNULL函数干掉OR运算!

题目是查询表中VAL小于20的值,包括NULL值:

SELECT*FROMTWHEREISNULL(VAL,-1)<20SELECT*FROMTWHEREVALISNULLORVAL<20   两个SQL具有相同的输出结果   GRP_AGRP_BGRP_CVAL-----------------a1b1c110a1b1c210a2b3c3NULLa2b3c3NULLa2b3c3NULL(5行受影响)   GRP_AGRP_BGRP_CVAL----------------a1b1c110a1b1c210a2b3c3NULLa2b3c3NULLa2b3c3NULL(5行受影响)   SQLServer数据库ISNULL函数怎么应用   2.ISNULL非主流更新表存储过程示例   如某更新表存储过程如下:   CREATEPROCUpdateT(@IDINT,@GRP_AVARCHAR(10)=NULL,@GRP_BVARCHAR(10)=NULL,@GRP_CVARCHAR(10)=NULL,@VALINT=0)ASBEGINUPDATETSETGRP_A=@GRP_A,GRP_B=@GRP_B,GRP_C=@GRP_C,VAL=@VALWHEREID=@IDEND   当我们使用这个存储过程的时候,必须先得该行的所有记录,再把所有记录更新回去,可是这并不总是必须的。有时候手头只有两个数据:ID和VAL,我只想更新这个VAL,又有时候手头有另外两个数据:ID和GRP_A,这时候只更新GRP_A列即可。还有很多情况,如:   仅更新GRP_A,   仅更新GRP_A,GRP_B   仅更新GRP_A,GRP_B,GRP_C   仅更新GRP_A,GRP_B,GRP_C,VAL   ...   这样的组合太多了,要想一劳永逸解决问题那就得更新任何字段前,先得到整行记录,再整行更新回去,于是多了一项工作:先查询,再更新,那没有办法不先查询直接更新某一列呢而且列可以任意组合   在给出答案前,先声明一句:这个方法算不上完美解决方案,仅仅是个思路罢了,虽然我一直认为没什么影响,但假如要在正式项目中使用,建议还是多听听DBA的意见!   非主流更新任意列存储过程:   CREATEPROCUpdateT(@IDINT,@GRP_AVARCHAR(10)=NULL,@GRP_BVARCHAR(10)=NULL,@GRP_CVARCHAR(10)=NULL,@VALINT=0)ASBEGINUPDATETSETGRP_A=ISNULL(@GRP_A,GRP_A),GRP_B=ISNULL(@GRP_B,GRP_B),GRP_C=ISNULL(@GRP_C,GRP_C),VAL=ISNULL(@VAL,VAL)WHEREID=@IDEND  

看完上述内容是否对您有帮助呢?如果还想对相关知识有进一步的了解或阅读更多相关文章,请关注创新互联行业资讯频道,感谢您对创新互联网站建设公司,的支持。


网站名称:SQLServer数据库中如何使用ISNULL函数-创新互联
本文链接:http://scyanting.com/article/ipcic.html