新しい関数: ARRAY_FLATTEN が類似した名前の UDFs と競合する可能性

注意

この動作変更は2023_06バンドルにあります。

バンドルの現在のステータスについては、 バンドル履歴 をご参照ください。

Snowflakeの現在のリリースでは、Snowflakeは ARRAY_FLATTEN という新しい組み込み関数を導入しました。

ARRAY_FLATTEN は、 ARRAYs の ARRAY を単一の ARRAY にフラット化します。

  • ARRAY が2レベル以上の深度でネストされている場合は、1レベルのネストのみが削除されます。

  • 入力 ARRAY が NULL であるか、 NULL の要素を含む場合、結果は NULL になります。

ARRAY_FLATTEN という名前の UDF がある場合、この動作変更は以下のような影響をもたらします。

以前:

ARRAY_FLATTEN への呼び出しは UDF に解決されます。

現在:

ARRAY_FLATTEN への呼び出しは、新しい組み込み ARRAY_FLATTEN 関数に解決されます。

組み込み ARRAY_FLATTEN 関数は、使用する UDF と異なる動作をする場合があります。

新しい組み込み ARRAY_FLATTEN 関数の文書化されたセマンティクスが、使用する UDF のセマンティクスと一致しない場合、次のいずれかを実行できます。

  • UDF の名前を変更し(ALTER FUNCTION ... RENAME TO ... を使用)、元の UDF の名前に対する参照をすべて新しい名前に置き換えます。

  • UDF を含むデータベースとスキーマの名前を指定して、 UDF へのすべての参照を 完全に修飾 します。例:

    SELECT my_database.my_schema.array_flatten(...);
    
    Copy

参照: 1239