例: TempTable トークンおよび OutputTempTable トークンの使用
この例は、TempTable トークンと OutputTempTable トークンを未加工 SQL 照会で使用する方法を示しています。
「ゴールド」の顧客 (例えば、Indiv.AcctType = 'Gold') である 1 万人の顧客を選択する Select1 というプロセスがあるとします。 そして、次の未加工 SQL 照会を使用して、第 2 の選択プロセス (「Select2」) に Select1 を接続します。
Select p.CustID from Indiv p, <TempTable> where p.CustID = <TempTable>.CustID group by p.CustID having sum(p.PurchAmt) > 500
この例では、入力セル内に存在する、購入額の合計が 500 ドルを超える顧客 (言い換えると、「ゴールド」の顧客タイプの顧客) を選択します。
これに対して、次の未加工 SQL 照会では <TempTable> トークンと結合を省略しています。
Select p.CustID from Purchases p group by p.CustID having sum(p.PurchAmt) > 500
最初に Purchases テーブル内の顧客すべて (何百万もの顧客になる可能性がある) について個々の購入額の合計を算出してから、その顧客が「ゴールド」の顧客であるかどうかに関係なく、購入額が 500 ドルを超える顧客すべてを選択します。
したがって、最良のパフォーマンスを得るためには、データベース内最適化が無効の場合でも入力セルが存在するときは、<TempTable> トークンを使用して未加工 SQL 照会を作成します。
この例では、話を単純化するために <OutputTempTable> トークンを使用していませんが、データベース内最適化を維持して、オーディエンス ID がデータベースから Campaign サーバーに取得し戻されないようにするために、作成する未加工 SQL 照会には <OutputTempTable> トークンを組み込む必要があります。以下に例を示します。
Create table <OutputTempTable> as Select p.CustID from Purchases p, <TempTable> where p.CustID = <TempTable>.CustID group by p.CustID having sum(p.PurchAmt) > 500