(1).ISNULL:
??? ISNULL检测表达式是否为NULL,如果是的话替换NULL值为另外一个值.
??? 例子:ISNULL(b.natives,'未知')
??? select a.real_name,ISNULL(b.natives,'未知') from Hr_user as a left join HR_user_ext as b on a.id = b.user_id
??
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 
??? 这个原来为NULL的字段现在已经变成未知了.
? (2).nullif:
? select nullif(55,355)
? 如果两个参加值相同就返回null,不相同返加第一个参数值.
?(3).COALESCE
???? 取出第一个不为空的值.
?????? DECLARE @a int
???????? DECLARE @b int
???????? DECLARE @c int
?????? ? set @b = 2
???????? set @c = 3
???????? select COALESCE(@a,@b,@c)
???????? select COALESCE(null,null,3)
??? 这两个结果的值都是3喔!
???
本文介绍了SQL中处理空值的三种常用函数:ISNULL用于替换NULL值,nullif在两个值相同时返回NULL,COALESCE则返回第一个非空值。通过具体示例展示了这些函数的应用场景。
2万+

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



