SQL语句--NULL(2)

SQL语句–NULL(2)

本篇主要想说下 涉及到null的计算
null+任何值 返回值均为:null
eg:null+0=null 0+0=0
下面我们创建个函数看下效果
(关于标量函数、表值函数在 简单函数书写举例我有详细讲解,需要的可以去看下)

--------------------------------创建函数 A+B --------------------
CREATE FUNCTION TEST01(@A INT,@B INT) RETURNS INT
AS
BEGIN
	RETURN @A+@B
END
GO
--------------------------------查询函数 A+B --------------------
SELECT DBO.TEST01(0,0)

返回结果:
在这里插入图片描述

--------------------------------查询函数 A+B --------------------
SELECT DBO.TEST01(NULL,0)

返回结果:
在这里插入图片描述

--------------------------------查询函数 A+B --------------------
SELECT DBO.TEST01(NULL,NULL)

返回结果:
在这里插入图片描述
也正是因为NULL不论加什么值都是NULL,
所以平时为了方便定位问题,我们一般会选择将NULL值转化为0
这里就会用到一个函数 isnull()
上一篇:NULL与’ ’
这里有提到 isnull()的具体写法

下面我们对之前写的函数稍加改造

ALTER FUNCTION TEST01(@A INT,@B INT) RETURNS INT
AS
BEGIN
	RETURN ISNULL(@A,0)+ISNULL(@B,0)	
---当@A为NULL时,返回0,当@A不为NULL时,返回@A
END

GO
--------------------------------查询函数 A+B --------------------
SELECT DBO.TEST01(0,0)

返回结果:
在这里插入图片描述

--------------------------------查询函数 A+B --------------------
SELECT DBO.TEST01(NULL,0)

返回结果:
在这里插入图片描述

--------------------------------查询函数 A+B --------------------
SELECT DBO.TEST01(NULL,NULL)

返回结果:
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值