MySQL coalesce()函数

MySQL coalesce()函数

MySQL coalesce()函数

在MySQL中,coalesce()函数用于返回参数列表中的第一个非NULL值。它可以接受多个参数,并按参数的顺序进行判断和返回。

语法

coalesce(expr1, expr2, ..., expr_n)

  • expr1expr_n 是需要判断的表达式或列,可以是常量、表达式、列名等。

示例

考虑下面的students表:

id name age city
1 Jack 19 New York
2 Emma 20 NULL
3 Lucas NULL Paris
4 Sophia 18 Berlin
5 Alexander 21 NULL

示例1: 使用coalesce()处理NULL值

SELECT id, name, coalesce(age, 0) as age, coalesce(city, 'NA') as city
FROM students;

结果:

id name age city
1 Jack 19 New York
2 Emma 20 NA
3 Lucas 0 Paris
4 Sophia 18 Berlin
5 Alexander 21 NA

在以上示例中,我们使用coalesce()函数将age列中的NULL值替换为0,将city列中的NULL值替换为字符串’NA’。这样可以在查询结果中避免使用NULL值,使结果更加友好和易读。

示例2: 使用coalesce()合并多个列

SELECT id, name, coalesce(city, age, 'NA') as info
FROM students;

结果:

id name info
1 Jack New York
2 Emma 20
3 Lucas Paris
4 Sophia Berlin
5 Alexander 21

在以上示例中,我们使用coalesce()函数合并了cityage两列,并将合并结果命名为info列。如果city列为NULL,则将返回age列中的值,如果都为空,则返回字符串’NA’。这样可以将多个列的值合并到一个列中,简化查询结果。

注意事项

  • coalesce()函数仅在参数列表中的所有表达式或列均为NULL时才返回NULL。如果参数列表中的某个表达式或列不为NULL,则该值将作为返回值。
  • 如果参数列表中的所有表达式或列都为NULL,且没有提供替代值,则coalesce()函数将返回NULL。

以上是关于MySQL中coalesce()函数的详细介绍和示例。通过使用coalesce()函数,我们可以处理NULL值,简化查询结果,并实现更友好和易读的输出。

Camera课程

Python教程

Java教程

Web教程

数据库教程

图形图像教程

办公软件教程

Linux教程

计算机教程

大数据教程

开发工具教程