- 类别:
半结构化和结构化数据函数 (数组/对象)
ARRAY_MAX¶
给定一个输入 ARRAY,返回具有最高值的元素,该元素不是 SQL NULL。如果输入 ARRAY 为空或仅包含 SQL NULL 元素,则此函数返回 NULL。
语法¶
实参¶
array输入 ARRAY。
返回¶
此函数返回一个 VARIANT,其中包含具有最高值的元素,该元素不是 SQL NULL。
如果 array 为 NULL、空或仅包含 SQL NULL 元素,则该函数返回 NULL。
使用说明¶
SQL NULL 不同于半结构化数据中的显式 NULL 值(例如,JSON 数据中的 JSON NULL)。在标识具有最高值的元素时,会考虑显式 NULL 值。
该函数通过比较数组中的元素来确定要返回的元素。该函数支持比较相同数据类型或以下数据类型的元素:
NUMBER 和 FLOAT 数据类型的元素。
TIMESTAMP_LTZ 和 TIMESTAMP_TZ 数据类型的元素。
如果数组包含其他数据类型的元素,则将这些元素 转换 为常见的数据类型,如下例所示。
示例¶
下面的示例返回一个 VARIANT,其中包含 ARRAY 常量 中具有最高值的元素:
下面的示例展示了 JSON NULL 的处理不同于 SQL NULL。如果 array 包含 JSON NULL,则函数返回 JSON NULL。
下面的示例展示了如果输入 ARRAY 为空,则该函数将返回 NULL :
下面的示例展示了如果输入 ARRAY 仅包含 SQL NULLs,则函数返回 NULL:
要确定具有不同数据类型元素的数组中的最大值,则将这些元素 转换 为同一数据类型。以下示例将 DATE 元素转换为 TIMESTAMP 元素,以确定数组中的最大值: