类别:

条件表达式函数

GREATEST_IGNORE_NULLS

返回表达式列表中最大的非 NULL 值。GREATEST_IGNORE_NULLS 支持所有数据类型,包括 VARIANT。

备注

要使用此函数,必须在您的账户中启用 2024_03 行为变更捆绑包。当前,此捆绑包是默认启用的。

如果您的账户中禁用了 2024_03 行为变更捆绑包,则此函数将无法按文档要求运行。

在账户中启用此捆绑包,请执行以下语句:

SELECT SYSTEM$ENABLE_BEHAVIOR_CHANGE_BUNDLE('2024_03');
Copy
另请参阅:

GREATEST

语法

GREATEST_IGNORE_NULLS( <expr1> [ , <expr2> ... ] )
Copy

实参

exprN

实参必须包含至少一个表达式。所有表达式都应为相同类型或兼容的类型。

返回

  • 第一个实参确定返回类型:

    • 如果第一种类型是数值,则返回类型将根据所有实参列表中的数值类型“扩宽”。

    • 如果第一种类型不是数值,则所有其他实参必须可转换为第一种类型。

排序规则详细信息

  • The collation specifications of all input arguments must be compatible.

  • The comparisons follow the collation based on the input arguments' collations and precedences.

  • The collation of the result of the function is the highest-precedence collation of the inputs.

示例

创建表并插入一些值:

CREATE TABLE test_greatest_ignore_nulls (
  col_1 INTEGER,
  col_2 INTEGER,
  col_3 INTEGER,
  col_4 FLOAT);

INSERT INTO test_greatest_ignore_nulls (col_1, col_2, col_3, col_4) VALUES
  (1, 2,    3,  4.25),
  (2, 4,   -1,  NULL),
  (3, 6, NULL,  -2.75);
Copy

运行 SELECT 语句,返回表内每一行中的最大非空值:

SELECT col_1,
       col_2,
       col_3,
       col_4,
       GREATEST_IGNORE_NULLS(col_1, col_2, col_3, col_4) AS greatest_ignore_nulls
 FROM test_greatest_ignore_nulls
 ORDER BY col_1;
Copy
+-------+-------+-------+-------+-----------------------+
| COL_1 | COL_2 | COL_3 | COL_4 | GREATEST_IGNORE_NULLS |
|-------+-------+-------+-------+-----------------------|
|     1 |     2 |     3 |  4.25 |                  4.25 |
|     2 |     4 |    -1 |  NULL |                  4    |
|     3 |     6 |  NULL | -2.75 |                  6    |
+-------+-------+-------+-------+-----------------------+
语言: 中文