例: 変数参照テーブル関数 - Advanced SQL Engine - Teradata Database

Teradata Vantage™ - SQLデータ定義言語 構文規則および例

Product
Advanced SQL Engine
Teradata Database
Release Number
17.05
Published
2021年1月
Language
日本語
Last Update
2021-03-30
dita:mapPath
ja-JP/ncd1596241368722.ditamap
dita:ditavalPath
ja-JP/ncd1596241368722.ditaval
dita:id
B035-1144
Product Category
Software
Teradata Vantage

この例は、別のテーブルに等価結合される変数参照テーブル関数を示しています。

この例については、以下の点に注意が必要です。
  • テーブル関数はすべてのAMPに送信され、tbl1のすべての行からのtbl.c1が渡されます。したがって、これは変数モードのテーブル関数です(Teradata Vantage™ - SQL外部ルーチン プログラミング、B035-1147を参照)。
  • このテーブル関数の設計者は、「等価」条件が満たされない場合に行をまったく生成しないことによって関数にいくらかの判断機能があることを示すために、3つ目の引数を追加しました。例えば、入力引数tbl_l.c1と値tf2.c1の行が等しくない場合、関数は行を生成しません。このコードによって、WHERE句条件の結果としてテーブル関数により生成される行をフィルタ処理するという後続のステップは不要になります。
           SELECT *
           FROM tbl_1, TABLE(tudf1(28.8, tbl_1.c1, 'equal')) AS tf2
           WHERE tbl_1.c1 = tf2.c1;