SQL Server里的 ISNULL 与 NULLIF

本文介绍了 SQL 中处理 NULL 值的两种方法:ISNULL 和 NULLIF 函数。ISNULL 函数用于替换 NULL 值,而 NULLIF 则是在两个表达式相等时返回 NULL。文章详细解释了这两个函数的用法并通过具体示例展示了它们如何工作。
ISNULL(check_expression, replacement_value)
 
check_expression 与 replacement_value 数据类型必须一致,如果 check_expression 为 NULL,则返回 replacement_value,如果check_expression 不为 NULL,则返回 check_expression
 


NULLIF(expression, expression)
 
如果两个 expression 相等,则返回 NULL,该 NULL 为第一个 expression 的数据类型,如果两个 expression 不相等,则返回第一个 expression 
 


NULLIF:需要两个参数,如果两个指定的表达式等价,则返回null 
 例子:NULLIF(a,b) 
 说明:如果a和b是相等的,那么返回NULL,如果不相等返回a 
 select NULLIF('eqeqweqwe','1') 结果是eqeqweqwe 
 select NULLIF(1,1) 结果是NULL 
 
a和b的类型要一致 
 


ISNULL:需要两个参数,目标是讲null替换为指定的值,若第一个参数不为null,则返回第一个参数
 例子:ISNULL(a,b) 
 说明:如果a和b同时为NULL,返回NULL,如果a为NULL,b不为NULL,返回b,如果a不为NULL,b为NULL返回a,如果a和b都不为NULL返回a 
 select ISNULL(null,null)结果是null 
 select ISNULL(null,33)结果是33 
 select ISNULL('ddd',null)结果是ddd 
 
select ISNULL(44,33)结果是44
 


isnumeric:确认表达式是否为有效的数字形式

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值