Click here to view and discuss this page in DocCommentXchange. In the future, you will be sent there automatically.
根据给定数组表达式创建派生表,从而为每个数组元素生成一行。
UNNEST ( array-expression [, ...] ) [ WITH ORDINALITY ]
array-expression 用于派生表列的数组。
WITH ORDINALITY WITH ORDINALITY 子句允许应用程序重新调用从中获取各个值的原始数组元素。有效的 UNNEST 派生表必须具有为生成的各个表达式指定(通过使用 AS 子句)的名称。无法保证从 UNNEST 表中所生成的行的顺序。用户可使用 ORDER BY 子句获得所需的排序。
如果数组表达式具有不同的基数,则来自较短数组的缺失输出表达式将设为 NULL。如果指定 WITH ORDINALITY 子句,则结果集将包含一个整数列,用于标识行所表示的数组元素的基数。新列将附加到 UNNEST 派生表中,作为其最后一列。
无
以下示例说明如何将 UNNEST 运算符用于两个基数不同的数组:
SELECT * FROM UNNEST( ARRAY(2,3,4), ARRAY(4,5,6) ) WITH ORDINALITY ASs DT(X,Y,Z);
SQL 语句会返回以下结果: