16.20 - 使用上の注意 - Teradata Vantage NewSQL Engine

Teradata Vantage™ データ タイプおよびリテラル

prodname
Teradata Database
Teradata Vantage NewSQL Engine
vrm_release
16.20
category
プログラミング リファレンス
featnum
B035-1143-162K-JPN

ARRAY_UPDATEは、引数として配列式を取り、new_valueで指定した値でarray_expr内の構成要素のすべてまたはサブセットを更新します。

ARRAY_UPDATE関数には、次に示すルールが適用されます。

  • array_exprがNULLの場合、結果はNULLになります。
  • new_valueの値は、array_exprの要素型と同じデータ型と評価される必要があります。あるいは、暗黙的に要素型ARRAYに変換できるデータ型であることが必要です。
  • scope_referenceまたはarray_indexを指定しない場合、array_expr内のすべての構成要素がnew_valueの値に更新されます。
  • scope_referenceを指定すると、array_exprの適用範囲の参照内の構成要素のみがnew_valueの値に更新されます。scope_referenceは配列内の連続する構成要素を参照する必要があります。
  • array_indexを指定すると、array_indexで指定した単一の構成要素のみが、array_expr内のnew_valueの値に更新されます。
  • 更新する構成要素がNULLの場合、NULLはarray_expr内のnew_valueの値で置換されます。
  • 1つ以上の構成要素が変更され、更新する構成要素より前にARRAY値内に初期化されていない構成要素がある場合、ARRAY_UPDATEはそれ以前の初期化されていない構成要素にNULLに設定します。この動作は、ARRAY構成要素値を設定する通常のSQL UPDATE文の動作と同じです。