概要
このユース ケース シナリオには次の要素があります:
5 つのスクリプトを順にロードします。
最初のロード スクリプトには、Transactions というテーブルに送信される日付と金額 (GBP) を含む初期データセットが含まれています。
2 番目のロード スクリプトには次の内容が含まれます:
3 番目のロード スクリプトには、Transactions_in_USD テーブルで GBP と USD の為替レートを作成するのに使用される join プレフィックスが含まれます。
4 番目のロード スクリプトには、Transactions_in_USD を初期の Transactions テーブルに追加する concatenate プレフィックスが含まれます。
5 番目のロード スクリプトには、データが Transactions テーブルに連結された Transactions_in_USD テーブルを削除する drop table ステートメントが含まれます。
最初のロード スクリプト
Transactions:
Load * Inline [
id, date, amount
1, 12/30/2018, 23.56
2, 12/07/2018, 556.31
3, 12/16/2018, 5.75
4, 12/22/2018, 125.00
5, 12/22/2018, 484.21
6, 12/22/2018, 59.18
7, 12/23/2018, 177.42
];
コードをクリップボードにコピーします 結果
データをロードしてシートを開きます。新しいテーブルを作成し、これらの項目を軸として追加します:
最初のロード スクリプト結果 ID 日付 amount 1 12/30/2018 23.56 2 12/07/2018 556.31 3 12/16/2018 5.75 4 12/22/2018 125.00 5 12/22/2018 484.21 6 12/22/2018 59.18 7 12/23/2018 177.42
テーブルには、金額 (GBP) を持つ初期データセットが表示されています。
2 番目のロード スクリプト
Transactions_in_USD:
NoConcatenate
Load * Inline [
id, date, amount
8, 01/01/2019, 164.27
9, 01/03/2019, 384.00
10, 01/06/2019, 25.82
11, 01/09/2019, 312.00
12, 01/15/2019, 4.56
13, 01/16/2019, 90.24
14, 01/18/2019, 19.32
];
コードをクリップボードにコピーします 結果
データをロードしてテーブルに移動します。
2 番目のロード スクリプト結果 ID 日付 amount 1 12/30/2018 23.56 2 12/07/2018 556.31 3 12/16/2018 5.75 4 12/22/2018 125.00 5 12/22/2018 484.21 6 12/22/2018 59.18 7 12/23/2018 177.42 8 01/01/2019 164.27 9 01/03/2019 384.00 10 01/06/2019 25.82 11 01/09/2019 312.00 12 01/15/2019 4.56 13 01/16/2019 90.24 14 01/18/2019 19.32
Transactions_in_USD テーブルからの 2 番目のデータセットが追加されたことがわかります。
3 番目のロード スクリプト
このロード スクリプトは、USD から GBP の為替レートを Transactions_in_USD テーブルに追加します。
Join (Transactions_in_USD)
Load * Inline [
rate
0.7
];
コードをクリップボードにコピーします 結果
データをロードして、データ モデル ビューアに移動します。Transactions_in_USD テーブルを選択すると、各既存レコードの「レート」項目値が 0.7 になっていることがわかります。
4 番目のロード スクリプト
resident load を使うと、このロード スクリプトは金額を USD に換算後、Transactions_in_USD テーブルを Transactions テーブルに連結します。
Concatenate (Transactions)
LOAD
id,
date,
amount * rate as amount
Resident Transactions_in_USD;
コードをクリップボードにコピーします 結果
データをロードしてテーブルに移動します。8~14 行目に GBP 建ての金額で新しい入力が表示されます。
4 番目のロード スクリプト結果 ID 日付 amount 1 12/30/2018 23.56 2 12/07/2018 556.31 3 12/16/2018 5.75 4 12/22/2018 125.00 5 12/22/2018 484.21 6 12/22/2018 59.18 7 12/23/2018 177.42 8 01/01/2019 114.989 8 01/01/2019 164.27 9 01/03/2019 268.80 9 01/03/2019 384.00 10 01/06/2019 18.074 10 01/06/2019 25.82 11 01/09/2019 218.40 11 01/09/2019 312.00 12 01/15/2019 3.192 12 01/15/2019 4.56 13 01/16/2019 63.168 13 01/16/2019 90.24 14 01/18/2019 13.524 14 01/18/2019 19.32
5 番目のロード スクリプト
このロード スクリプトは、4 番目のロード スクリプト結果テーブルから重複エントリを削除し、GBP 建ての金額を持つエントリのみを残します。
drop tables Transactions_in_USD;
コードをクリップボードにコピーします 結果
データをロードしてテーブルに移動します。
5 番目のロード スクリプト結果 ID 日付 amount 1 12/30/2018 23.56 2 12/07/2018 556.31 3 12/16/2018 5.75 4 12/22/2018 125.00 5 12/22/2018 484.21 6 12/22/2018 59.18 7 12/23/2018 177.42 8 01/01/2019 114.989 9 01/03/2019 268.80 10 01/06/2019 18.074 11 01/09/2019 218.40 12 01/15/2019 3.192 13 01/16/2019 63.168 14 01/18/2019 13.524
5 番目のロード スクリプトをロードした後、結果テーブルには両方のトランザクション データセットに存在した 14 件のトランザクションすべてが表示されます。ただし、トランザクション 8~14 では金額が GBP に変換されています。
2 番目のロード スクリプトで Transactions_in_USD の前に使用された NoConcatenate プレフィックスを削除した場合、スクリプトに「テーブル「Transactions_in_USD 」が見つかりません」というエラーが発生します。これは、Transactions_in_USD テーブルが初期 Transactions テーブルに連結するはずだったからです。