unnest
説明
UNNESTは、配列を受け取り、その配列内の要素をテーブルの複数の行に変換するテーブル関数です。この変換は「フラット化」とも呼ばれます。
UNNESTとLateral Joinを使用して、STRING、ARRAY、BITMAPから複数の行への一般的な変換を実装できます。詳細は Lateral join を参照してください。
バージョン2.5から、UNNESTは可変数の配列パラメータを受け取ることができます。配列は型や長さ(要素数)が異なる場合があります。配列の長さが異なる場合、最も長い長さが優先され、この長さに満たない配列にはnullが追加されます。詳細は Example 2 を参照してください。
構文
unnest(array0[, array1 ...])
パラメータ
array: 変換したい配列。ARRAYデータ型に評価できる配列または式でなければなりません。1つ以上の配列または配列式を指定できます。
戻り値
配列から変換された複数の行を返します。戻り値の型は、配列内の要素の型に依存します。
配列でサポートされる要素の型については、 ARRAY を参照してください。
使用上の注意
- UNNESTはテーブル関数です。Lateral Joinと共に使用する必要がありますが、キーワードLateral Joinを明示的に指定する必要はありません。