Database coalesce

coalesce

语法

注意:连接操作符“||”是一个值得注意的例外。

例如,空值加任何值都是空值,空值 乘任何值也都是空值,依此类推。

参数

expression

任何类型的表达式

n

表示可以指定多个表达式占位符。所有表达式必须是相同类型,或者可以隐性转换为相同的类型。

数据库

Mysql

返回类型

将相同的值作为 expression 返回

作用

返回表达式中第一个非空表达式,如有以下语句:

SELECT COALESCE(NULL,NULL,3,4,5) FROM dual

返回结果为:3

注释

如果所有自变量均为 NULL,则 COALESCE 返回 NULL 值。

COALESCE(expression1,...n) 与此 CASE 函数等价:

CASE

WHEN (expression1 IS NOT NULL) THEN expression1

...

WHEN (expressionN IS NOT NULL) THEN expressionN

ELSE NULL

nvl(bonus,0)    意思是   如果  bonus  is  null  ,  那么返回 0,  否则返回   bonus

coalesce(bonus,0,1) 意思是   返回  参数列表中, 第一个非 空的数据。也就是相当于, 如果  bonus  is  null  ,  那么返回 0,  否则返回   bonus。这里的最后一个参数  1,  目测是打酱油的。

coalesce(bonus,null,0)  意思是   返回  参数列表中, 第一个非 空的数据。也就是相当于, 如果  bonus  is  null , 那么第2个参数还是 null,  最后返回第3个参数 0

decode(name,‘apple’,0)  意思是,  如果  name  = ‘apple‘  那么返回  0否则的话 ,  就是返回  null  了。
时间: 2024-11-06 16:17:51

Database coalesce的相关文章

backup, file manipulation operations (such as ALTER DATABASE ADD FILE) and encryption changes on a database must be serialized.

昨天在检查YourSQLDba备份时,发现有台数据库做备份时出现了下面错误信息,如下所示: <Exec>   <ctx>yMaint.ShrinkLog</ctx>   <inf>Log Shrink</inf>   <Sql> --  ======================================================================== -- Shrink of log file E:\SQ

hive 的判断条件(if、coalesce、case)

CONDITIONAL FUNCTIONS IN HIVE Hive supports three types of conditional functions. These functions are listed below: IF( Test Condition, True Value, False Value ) The IF condition evaluates the "Test Condition" and if the "Test Condition&quo

How to Kill All Processes That Have Open Connection in a SQL Server Database[关闭数据库链接 最佳方法] -摘自网络

SQL Server database administrators may frequently need in especially development and test environments  instead of the production environments to kill all the open connections to a  specific database in order to process SQL Server maintenance task ov

oracle database resident connection pooling(驻留连接池)

oracle在11g中引入了database resident connection pooling(DRCP).在此之前,我们可以使用dedicated 或者share 方式来链接数据库,dedicated方式是oracle数据库默认的链接方式,无需过多的配置,而且关于dedicated的bug也是非常少的,因此,通常情况下,建议使用dedicated方式来链接数据库.但是,在服务器资源有限,并且同时连接数据库的用户量非常大时,dedicated方式就无能为力了.假设并发用户为5000,每个d

Oracle Database 12c Release 1下载安装(自身经历)

1.访问Oracle官网:https://www.oracle.com/index.html,下载Oracle Database 12c Release 1 (注意:File1和File2都要下载!!不然后期安装会报一堆错误,可参考:http://www.2cto.com/database/201503/386272.html) 2.将文件解压,把winx64_12102_database_2of2文件夹中database\stage\components目录下的所有文件夹,复制到winx64_

The SQL Server Service Broker for the current database is not enabled

把一个数据恢复至另一个服务器上,出现了一个异常: The SQL Server Service Broker for the current database is not enabled, and as a result query notifications are not supported.  Please enable the Service Broker for this database if you wish to use notifications. 截图如下: 解决方法: 参

Mac&#160;下locate命令使用问题WARNING: The locate database (/var/db/locate.database) does not exist.

想在Mac下使用locate时,提醒数据库没创建: WARNING: The locate database (/var/db/locate.database) does not exist. To create the database, run the following command: sudo launchctl load -w /System/Library/LaunchDaemons/com.apple.locate.plist Please be aware that the d

Windows 7 64bit上安装Oracle Database 12c [INS-30131] 错误的解决方法

Windows 7 64bit上安装Oracle Database 12c,出现以下错误: 解决方法: 第一步:控制面板>所有控制面板项>管理工具>服务>SERVER  启动 第二步:控制面板>所有控制面板项>管理工具>计算机管理>系统工具>共享文件夹>共享   右键单击“共享”>新建共享> 点击“下一步”>   单击“浏览”> 选择"本地磁盘(C:)">确定   单击“下一步”:     单击“

oracle 11g RMAN:Active Database Duplication for standby database 创建dg 命令解读

基于生产的duplicate 复制,如果事先没有手动配置pfile(设定内存,进程,dg相关配置参数,数据库相关路径参数)则会出现各种参数无法转换的问题: 因为duplicate 会从生产自动拷贝pfile,控制文件,密码文件过来,如果主库和备库环境不一样(数据库软件路径,数据文件存储路径) 如果没在duplicate的命令中完整指定新环境备库的各种参数涉及路径,及转换参数,就会默认使用从主库拷贝过来的spfile中的参数设置(会忽略oracle 自定义的的缺省配置:比如adr 缺省会放在ORA