マッピング

mapping プレフィックスは、マッピング テーブルの作成に使用します。マッピング テーブルは、スクリプト実行中に項目値と項目名を置き換えるといった操作で使用できます。

Syntax:  

Mapping( loadstatement | selectstatement )

 

mapping プレフィックスは LOAD または SELECT ステートメントの前に入れることができ、ロード ステートメントの結果をマッピング テーブルとして保存します。マッピングは、US や U.S.、アメリカの USA への置換など、スクリプト実行中に項目の値を置き換える効果的な方法です。マッピング テーブルは 2 列構成で、1 列目には比較値、2 列目はマッピング値が含まれます。マッピング テーブルは一時的にメモリに保存され、スクリプト実行後に自動的に削除されます。

マッピング テーブルのコンテンツには、Map … Using および Rename Field ステートメント、Applymap() および Mapsubstring() 関数を使用してアクセスできます。

Example:  

この例では、Salesperson とその居住国の国コードのリストをロードします。国コードを国名に置き換えるために、国コードを国にマッピングしたテーブルを使用します。このマッピング テーブルでは、3 つの国のみが定義されており、他の国は 'Rest of the world' としてマッピングされています。

// Load mapping table of country codes: map1: mapping LOAD * Inline [ CCode, Country Sw, Sweden Dk, Denmark No, Norway ] ; // Load list of salesmen, mapping country code to country // If the country code is not in the mapping table, put Rest of the world Salespersons: LOAD *, ApplyMap('map1', CCode,'Rest of the world') As Country Inline [ CCode, Salesperson Sw, John Sw, Mary
Sw, Per Dk, Preben Dk, Olle No, Ole Sf, Risttu] ; // We don't need the CCode anymore Drop Field 'CCode';

この結果、テーブルは次のようになります。

Salesperson Country
John Sweden
Mary Sweden
Per Sweden
Preben Denmark
Olle Denmark
Ole Norway
Risttu Rest of the world