17.10 - NEWキーワードを使用しないARRAYコンストラクタ式の呼び出し - Advanced SQL Engine - Teradata Database

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

Product
Advanced SQL Engine
Teradata Database
Release Number
17.10
Release Date
2021年7月
Content Type
プログラミング リファレンス
Publication ID
B035-1143-171K-JPN
Language
日本語 (日本)

NEWキーワードを使用しなくても、ARRAYコンストラクタ式を呼び出すことができます。これはOracle構文と互換性があります。NEWキーワードを使用せずに呼び出すと、この式をVantageはUDF式のように扱います。これは、ARRAYコンストラクタ式を使用できる場所を、スカラーUDFと同じ用法に制限します。これは、同じシナリオで、NEWキーワードを使用しないARRAYコンストラクタ式が使用できないSQL文内でも、NEWキーワードを使用するARRAYコンストラクタ式は使用できることを意味します。例えば、CREATE TABLE文のDEFAULT句で、NEWキーワードを使用するARRAYコンストラクタ式を使用できます。ただし、DEFAULT句でNEWキーワードを使用しないARRAYコンストラクタ式は使用できません。

さらに、NEWキーワードを使用しないARRAYコンストラクタ式はスカラーUDFのように扱われるので、この場合、UDFの既存の検索順序ルールが適用されます。Vantageは次のデータベース内のUDFを次の順序で検索します。

  1. デフォルト データベース
  2. SYSLIBデータベース
  3. TD_SYSFNLIBデータベース
  4. SYSUDTLIBデータベース

UDFがデフォルト データベース、SYSLIB、または、TD_SYSFNLIB内にあり、かつ、定義されたARRAYデータ型と同じ名前を持つ場合、また、NEWキーワードを指定しないARRAYコンストラクタ式を呼び出す場合は、VantageはARRAYコンストラクタに代わってUDFを呼び出します。この対立を回避するには、ARRAYコンストラクタを呼び出すときにNEWキーワードを使用します。