メイン コンテンツをスキップする 補完的コンテンツへスキップ

マッピング

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

構文:  

Mapping( loadstatement | selectstatement )

 

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

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

 

この例では、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';

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

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

このページは役に立ちましたか?

このページまたはコンテンツにタイポ、ステップの省略、技術的エラーなどの問題が見つかった場合はお知らせください。