QlikWorld 2020 Global Conference. Join us to discover how to get the most from your data. Act fast. Register now and save.

Mapping

O prefixo mapping é usado para criar uma tabela de mapeamento que possa ser usada, por exemplo, para substituir valores e nomes de campo durante a execução do script.

Syntax:  

Mapping( loadstatement | selectstatement )

 

O prefixo mapping pode ser colocado na frente de uma declaração LOAD ou SELECT e usará o resultado da declaração de carregamento como entrada para uma transformação de tabela. O mapeamento oferece um modo eficaz de substituir valores de campo durante a execução do script, por exemplo, substituir EU, E.U.A. ou Estados Unidos por EUA. A tabela de mapeamento consiste em duas colunas: a primeira contém valores de comparação, e a segunda, os valores de mapeamento desejados. As tabelas de mapeamento serão armazenadas temporariamente na memória e descartadas automaticamente após a execução do script.

O conteúdo da tabela de mapeamento pode ser acessado usando, por exemplo, o comando Map … Using, o comando Rename Field, a função Applymap() ou a função Mapsubstring().

Example:  

Neste exemplo, carregamos uma lista de vendedores com um código de país representando seu país de residência. A tabela é usada para mapear o código de um país a um país para substituir o código pelo nome do país. Somente três países estão definidos na tabela de mapeamento, outros códigos de países estão mapeados para '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';

A tabela resultante tem a seguinte aparência:

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