例: DIMENSION入力がある複数の入力テーブル演算子の使用 - 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/vnq1596660420420.ditamap
dita:ditavalPath
ja-JP/vnq1596660420420.ditaval
dita:id
B035-1146
Product Category
Software
Teradata Vantage

この例では、携帯電話を使用して購入されたときに、テーブル演算子closest_storeが最も近い小売店を探します。演算子は、次の入力データセットを受け取ります。

  • 携帯電話を使用して行なわれた購入のエントリおよびオンライン購入が実行された際の電話の正規化された空間座標が含まれるphone_purchasesテーブル。
  • すべての小売店およびそれに関連付けられている正規化された空間座標が含まれるストア テーブル。ストア テーブルは、DIMENSION入力として提供されるテーブルより小さなファクト テーブルです。
    pid x_coordinate y_coordinate
    P0
    2
    1
    P1
    1
    5
    P2
    3
    2
    P3
    0
    4
sid x_coordinate y_coordinate
SO
1
4
S1
2
3

SELECTの構文は次のとおりです。

     SELECT pid, sid
       FROM closest_store (
       ON phone_purchases PARTITION BY pid,
       ON stores DIMENSION) AS D;

出力は次のようになります。

 
pid
---
 
sid
---
 
P0
 
S1
 
P1
 
S0
 
P2
 
$S1
 
P3
 
$SO

PARTITION BY ANYを使用してテーブル演算子を呼び出すこともできます。これにより、AMPで行の既存の配置を維持できます。SELECTの構文は次のとおりです。

     SELECT pid, sid
       FROM closest_store (
       ON phone_purchases PARTITION BY ANY,
       ON stores DIMENSION) AS D;