COALESCE函数

一、简介

COALESCE函数并非某个数据库的专有函数,它是标准的SQL函数,被许多数据库系统支持。一些广泛使用的数据库系统,如MySQL、PostgreSQL、SQLite、SQL Server、Oracle等,都实现了COALESCE函数。尽管各数据库实现和性能可能略有不同,但其核心功能和语法在各个数据库中基本保持一致。

二、语法

COALESCE函数是SQL中的一个非常实用的函数,它可以用于返回一系列参数中的第一个非空值。如果所有参数都为NULLCOALESCE函数将返回NULL

语法:

COALESCE(amount,0)  如果amount为null,那么就把它设置为0

三、基础案例

employee_id first_name middle_name last_name
1 John NULL Smith
2 Jane Mary Doe
3 Michael NULL Johnson

当我们想要查询员工的名字的时候,如果中间有字的话就显示,如果没有字的话就显示空字符串

SELECT
  first_name,
  COALESCE(middle_name, '') AS middle_name,
  last_name
FROM
  employees;

查询结果如下:

first_name middle_name last_name
John Smith
Jane Mary Doe
Michael Johnson

四、真实场景

1.今日项目中有个计算金额总和的sql,如果表中有数据的话会计算出数据,但是如果表中无数据的话,sum(amount)的值为null,所以我们使用COALESCE函数来进行判断,如果sum(amount)为null的话,就把它设置为0,以便sum(amount)字段可以与别的字段进行计算

COALESCE(SUM(AMOUNT),0)

你可能感兴趣的:(ORACLE,oracle,数据库)