目標
ELTツールDataSpider Servista(OEM提供でConnectと呼ばれてることもある)で、以下を行う。
★前提:テーブルA内の一部データを、テーブルBに日々貯めてるイメージ
(1)本日日付から当月を取得
(2)テーブルBから当月データを削除
(3)テーブルBにテーブルAの当月データをインポート
前提
書き込み先はDr.Sumのテーブルです。
経緯
テーブルAには日々データが増える。テーブルAはデータ量が多いので、テーブルBの全削除⇒全インポートはやりたくない。このような、当月データ単位で入れ替えたいことがよく発生する。
インポート対象データが増えるパターンの場合、全削除⇒全インポートは始めはいいが時間の経過に伴いメモリ不足エラー発生の可能性が高まるぅ。
手順
今回はこの部分の説明になります。
スクリプト変数(P_現在月)を作成。
現在月取得
「変数代入」を使います。
右の枠内から真ん中の広いエリアにドラッグしてきてください。
variable(変数代入のアダプタ)を開く
variableをダブルクリックしてください。このあと、緑のエリアに作っていきますよ。
まず、右のツールパレットから、「現在日時」をもってきましょう。
次に、現在日時から年月(yyyy/MM)だけ欲しいので「日付フォーマッティング」で抜き出す。
この例では「yyyy/MM」になってますが、検索するデータが「202104」の形であれば「yyyyMM」でOKですよ。
「日付フォーマッティング」から右側の「P_現在月」まで線をひっぱりましょう。
これで「P_現在月」に今日の年月が入ります。2021/05 みたいなかんじです。
テーブルから当月データを削除する
変数は ${変数名}
で使えます。
注!変数が文字列型の時は'(シングルクオーテーション)で囲むことを忘れずに!
以下例でも' 'で囲んでいます。
当月データを抽出する
このあとは
ご自分の環境の書き込み先に合わせて選んでくださいね。
私の場合はDr.Sumテーブルなのでこのへん。
つぶやき
Connect使い始めた当初、部品(アダプタって呼ばれてるのかな、ツールパレットから選ぶ一個一個のパーツみたいなやつ)はどこにあるのか?で悩むことが多かったです。。
アダプタを置いて、クリックし選択した状態でF1をクリックするとそのアダプタのヘルプが立ち上がって便利ですよ!
以上