COALESCE 是 SQL 语言中的一个函数,它的作用是返回第一个非空表达式的结果。如果所有的表达式都是空值(NULL),则 COALESCE 函数返回 NULL。这个函数常用于处理可能存在 NULL 值的数据列,确保查询结果更加稳定和可预测

下面是 COALESCE 函数的一些基本用法示例:

  1. 基本使用:
    SELECT COALESCE(column1, '默认值') FROM table_name;
    
    如果 column1 的值为 NULL,那么将返回 '默认值'。

在工作中常常用来返回的字段不存在(即为null),需要返回默认值(如"",或者自定义的默认值)

  1. 多个参数:

    SELECT COALESCE(column1, column2, '默认值') FROM table_name;
    

    这里 COALESCE 会检查 column1 和 column2,返回第一个非 NULL 的值。如果 column1 和 column2 都是 NULL,那么返回 '默认值'。

  2. 结合其他函数:

    SELECT COALESCE(SUBSTRING(column1, 1, 3), '默认值') FROM table_name;
    

    如果 column1 是 NULL 或者截取的结果为空字符串,将返回 '默认值'。

  3. 在 JOIN 语句中:

    SELECT t1.column1, COALESCE(t2.column2, '默认值') 
    FROM table1 t1
    LEFT JOIN table2 t2 ON t1.id = t2.id;
    

    如果 table2 中没有与 table1 匹配的行,t2.column2 将为 NULL,此时 COALESCE 将返回 '默认值'。

COALESCE 函数在处理可能存在 NULL 值的数据时非常有用,它可以帮助确保查询结果的一致性,特别是在报表生成和数据分析中。

更多推荐