首先解释一下null值与 空字符串(‘’) 的区别 :
null不指向任何对象,相当于对象的值为空,而’ '代表长度为0的空字符串
1、coalesce
coalesce函数, (expression_1, expression_2, …,expression_n)依次参考各参数表达式,遇到非null值即停止并返回该值。如果所有的表达式都是空值,最终将返回一个空值。使用coalesce在于大部分包含空值的表达式最终将返回空值。
select coalesce(null,null,3)
返回值: 3
2、nvl
是一个空值转换函数。它的格式是nvl( string1, replace_with)。它的功能是如果string1为null,则nvl函数返回replace_with的值,否则返回string1的值,如果两个参数都为null ,则返回null。
select nvl(null,3)
返回值:3
当然还可以使用is null 或者is not null 的语法对null进行筛选和排除
本文介绍了SQL中处理空值的方法,重点讲解了COALESCE和NVL函数的用法。COALESCE函数从多个表达式中返回第一个非空值,而NVL则用于将空值替换为指定的替代值。通过示例,展示了这两个函数如何在查询中有效处理null值,对于理解和优化SQL查询具有重要意义。
5299

被折叠的 条评论
为什么被折叠?



