mssql 空值 spark
很多人知道ISNULL函数,但是很少人知道Coalesce函数,人们会无意中使用到Coalesce函数,并且发现它比ISNULL更加强大,其实到目前为止,这个函数的确非常有用,其实使用CASE WHEN TH
|
简介: 很多人知道ISNULL函数,但是很少人知道Coalesce函数,人们会无意中使用到Coalesce函数,并且发现它比ISNULL更加强大,其实到目前为止,这个函数的确非常有用,其实使用CASE WHEN THEN ELSE END 或者IF(column1 IS NULL,column2,column1)本文主要讲解其中的一些基本使用: COALESCE()函数: 主流数据库系统都支持COALESCE()函数,这个函数主要用来进行空值处理,其参数格式如下:
COALESCE()函数的第一个参数expression为待检测的表达式,而其后的参数个数不定。 COALESCE()函数将会返回包括expression在内的所有参数中的第一个非空表达式。 如果expression不为空值则返回expression;否则判断value1是否是空值, 如果value1不为空值则返回value1;否则判断value2是否是空值, 如果value2不为空值则返回value2;……以此类推, 如果所有的表达式都为空值,则返回NULL。 示例: 我们将使用COALESCE()函数完成下面的功能,返回人员的“重要日期”: 如果出生日期不为空则将出生日期做为“重要日期”,如果出生日期为空则判断注册日期是否为空,如果注册日期不为空则将注册日期做为“重要日期”mssql 空值,如果注册日期也为空则将“2008年8月8日”做为“重要日期”。实现此功能的SQL语句如下: MYSQL、Spark、MSSQLServer、DB2:
Oracle:
执行完毕我们就能在输出结果中看到下面的执行结果:
这里边最关键的就是Kerry和Smith这两行,可以看到这里的计算逻辑是完全符合我们的 需求的。 COALESCE()函数可以用来完成几乎所有的空值处理,不过在很多数据库系统中都提供了它的简化版,这些简化版中只接受两个变量,其参数格式如下:
这几个函数的功能和COALESCE(expression,value)是等价的。 比如SQL语句用于返回人员的“重要日期”,如果出生日期不为空则将出生日期做为“重要日期”,如果出生日期为空则返回注册日期的值: MYSQL:
MSSQLServer:
Oracle:
(编辑:百科站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- sql-server – SELECT语句中的OPTION FAST有什么作用?
- sql-server – FOR XML无法序列化数据,因为它包含字符(0x00
- 在SQL Server存储过程中按索引而不是名称访问表的列
- 【HW前知识库储备】浅谈攻击溯源的一些常见思路
- sql-server – 是否可以使用免费版本的SQL Server安装Team
- mysql root密码以及用户密码修改 忘记密码修改解决办法
- 如何根据T-SQL中前几个月的数据确定缺失月份的值
- 实体框架 – 具有Identity列的SQL Server Compact 4.0表中插
- mssql中得到指定日期所在月份的第一天的代码
- sql – 将两个表合并为一个新表,以便忽略另一个表中的选择行

