Mapping
Het prefix mapping wordt gebruikt om een toewijzingstabel te maken die bijvoorbeeld kan worden gebruikt voor het vervangen van veldwaarden en veldnamen tijdens de uitvoering van het script.
Syntaxis:
Mapping( loadstatement | selectstatement )
Het prefix mapping kan voor een LOAD- of SELECT-opdracht worden gezet en gebruikt het resultaat van de laadopdracht als toewijzingstabel. Toewijzing vormt een efficiënt manier om veldwaarden te vervangen tijdens de uitvoering van het script, zoals het vervangen van US, U.S. of Amerika door USA. Een toewijzingstabel bestaat uit twee kolommen, de eerste met vergelijkingswaarden en de tweede met de gewenste toewijzingswaarden. Toewijzingstabellen worden tijdelijk in het geheugen opgeslagen en automatisch gewist na uitvoering van het script.
De inhoud van de toewijzingstabel is toegankelijk via onder andere de opdracht Map … Using, de opdracht Rename Field, de functie Applymap() of de functie Mapsubstring().
Voorbeeld:
In dit voorbeeld laden wij een lijst met verkopers waarbij een landcode het land aangeeft waar zijn wonen. Wij gebruiken een tabel waarin een landcode wordt toegewezen aan een land ter vervanging van de landcode door de landnaam. Er zijn slechts drie landen gedefinieerd in de toewijzingstabel, andere landcode worden toegewezen aan 'Rest of the world'.
map1:
mapping LOAD *
Inline [
CCode, Country
Sw, Sweden
Dk, Denmark
No, Norway
] ;
// Load list of salesmen, mapping country code to country
Salespersons:
LOAD *,
ApplyMap('map1', CCode,'Rest of the world') As Country
Inline [
CCode, Salesperson
Sw, John
Sw, Mary
Dk, Preben
Dk, Olle
No, Ole
Sf, Risttu] ;
// We don't need the CCode anymore
Drop Field 'CCode';
De resulterende tabel ziet er als volgt uit:
Salesperson | Country |
---|---|
John | Sweden |
Mary | Sweden |
Per | Sweden |
Preben | Denmark |
Olle | Denmark |
Ole | Norway |
Risttu | Rest of the world |