大发体育娱乐在线-大发体育娱乐官方网站-大发体育娱乐登录网址
做最好的网站

coalesce系统函数简要介绍,除零操作

来源:http://www.dfwstonefabricators.com 作者:数据库 人气:147 发布时间:2019-11-10
摘要:转自:http://www.maomao365.com/?p=4390 利用 nullif函数 。 风流倜傥、coalesce函数简单介绍 nullif函数 有七个参数,定义如下: coalesce 系统函数,比ISNULL更有力,更便利的系统函数, coalesce能够吸收

转自:http://www.maomao365.com/?p=4390

利用nullif函数

风流倜傥、coalesce函数简单介绍

nullif函数有七个参数,定义如下:

coalesce 系统函数,比ISNULL更有力,更便利的系统函数,
coalesce能够吸收接纳三个参数,再次来到最右侧不为NULL的参数,当全体参数都为空时,则赶回NULL
coalesce是最优isnull写法建设方案
以前大家接收isnull对两列或多列数据开展为空重返时候,必要频仍采纳isnull函数
—————————————————————————-
例:
declare @a varchar(10),@b varchar(10),@c varchar(10)
当@a为null时,我们查阅@b是或不是为NULL,不为null,则赶回@b ,不然查看@c 不为NULL,则赶回@c ,否则重返NULL

NULLIF( expression , expression )

select isnull(@a,isnull(@b,isnull(@c,null)))
/*当需决断的参数越来越多时,大家的函数表明式就能够变的要命复杂*/

其固守正是:假若四个钦点的说明式相等,就再次回到null值。

但大家选拔coalesce函数,会使此 表达式变的姣好,简单明了
select coalesce(@a,@b,@c)
——————————————————————————–

看风度翩翩示范:


select nullif(0,0)

二、coalesce 应用举个例子

运作结果:null

 

笔者们知道,null与其余数实行其余运算,其结果都相当null,利用这一点,大家得以将地点的sql改写为:

  declare @a varchar(10),@b varchar(10),@c varchar(10),@d int 

 select coalesce(@a,@b,@c)

 set @a ='g'
 select coalesce(@a,@b,@c)

 set @a =null 
 set @b ='g2'
 set @c ='g3'
 select coalesce(@a,@b,@c)

 set @a =null
 set @b =null
 set @c =null 
 set @d =100

 select coalesce(@a,@b,@c,@d)

declare @a int;

 

declare @b int;

set @a=10

set @b=0

select @a/nullif(@b,0)

其运作结果本来为null了。

再采用isnull函数,我们就能够达成当@b=0的时候,结果再次回到1的须要了。最终的sql改写如下:

declare @a int;

declare @b int;

set @a=10

set @b=0

select isnull(@a/nullif(@b,0),1)

OK,三种办法介绍完成,相对于艺术生龙活虎,小编更推荐我们使用办法二,因为方法二的代码更简省。

(就算有朋友对isnull函数不掌握的话,这里可以解释一下。

isnull的定义如下:

isnull(参数1,参数2)

其功用正是,当参数1对等null时,就回到参数2的值。)

本文由大发体育娱乐在线发布于数据库,转载请注明出处:coalesce系统函数简要介绍,除零操作

关键词:

上一篇:没有了

下一篇:没有了

频道精选

最火资讯