【第63回】 フィルター済みデータエクステンションに別のデータエクステンションのレコードを追加する方法
Salesforce Marketing Cloud のフィルター済みデータエクステンションとは、特定の条件を設定して、その条件に基づいたレコードをデータエクステンションへ格納できる機能です。フィルター済みデータエクステンションのレコードは、そのフィルター条件を変更しない限り変更はできません。
実際に、Email Studio や Contact Builder において、フィルター済みデータエクステンションのレコードのタブを開いてみても「インポート」のボタンは表示されませんし、Automation Studio の SQL クエリアクティビティでも、フィルター済みデータエクステンションは、格納先のデータエクステンションの対象として選択ができません。
しかし、私は、このフィルター済みデータエクステンションに別のデータエクステンションのレコードを追加する方法を見つけたのです。💡
その方法とは、Contact Builder の「値のインポート」を使う方法です。
Contact Builder のインポートには、データエクステンション間でレコードをインポートできる機能があり、この機能においては、ソースデータエクステンション側でも、格納先データエクステンション側でも「フィルター済みデータエクステンション」が選択できるのです。
ここでの「ポイント」は、
・フィルター済み DE + 標準 DE も可能ですし、
・フィルター済み DE + フィルター済み DE も可能であるということです。
※上書き、更新、追加など自由自在です。
■ 質問:この技術はどんな時に役に立ちますか?
■ 回答:Email Studio のフィルター機能は、SQL でいうところの UNION(統合)ができないとされてきましたが、この技術を用いることで UNION が可能になります。
それでは手順を確認してみましょう。今回の記事では、フィルター済み DE とフィルター済み DE の統合を試します。
まず、2 つのフィルター済みデータエクステンションを用意しました。
次に、Contact Builder の「インポート」タブに移動してインポートの定義を作成します。プルダウンから「既存のデータエクステンション」を選択し、追加する側のデータエクステンションを選択します。
今回は 100 レコードが格納されている「Filtered_DE_100」を選択しました。まずは、追加する側のフィルター済みデータエクステンションが選択できることが分かりました。
続いて、格納先となるデータエクステンションを選択します。
こちらは、50 レコードが格納されている「Filtered_DE_50」を選択します。格納先のデータエクステンションに関しても、フィルター済みデータエクステンションが選択できるのが分かりました。
これで、インポートのアクションタイプとして「追加&更新」で実行してみます。「Filtered_DE_50」に、150 のレコードが格納されれば成功です。
すると下記の通り、フィルタ済みデータエクステンション「Filtered_DE_50」が 150 レコードになりました。成功です。
ちなみに、この 150 レコードになった後のフィルター済みデータエクステンションを手動で更新すると・・・
当然、元の 50 レコードに戻りますので、特に自動更新のデータエクステンションでこれを実装する場合は、注意してください。
いかがでしたでしょうか?
今回、紹介したテクニックは、知っておくと、とても便利な場面に遭遇します。🕶️💻 是非、頭の片隅に入れておいてください。
今回は以上です。