跳到主要內容

ApplyMap - 指令碼函數

在此頁面

ApplyMap - 指令碼函數

ApplyMap 指令碼函數用於將某個運算式的輸出對應到先前載入的對應表。

Syntax:  

ApplyMap('map_name', expression [ , default_mapping ] )

Return data type: 雙值

Arguments:  

引數 描述
map_name

先前已透過 mapping loadmapping select 陳述式建立之對應表格的名稱。其名稱必須以一般單引號括住。

警告: 若您在巨集展開的變數中使用此函數,並參考不存在的對應表格,則函數調用會失敗,也不會建立欄位。
expression 應該對應其結果的運算式。
default_mapping

如果指定,則當對應表格未包含 expression 的相符值時,此值將用作預設值。如果未指定,則將按原樣傳回 expression 的值。

警告: ApplyMap 的輸出欄位名稱不可與其中一個輸入欄位名稱相同。這可能會造成意外結果。不可使用的範例:ApplyMap('Map', A) as A

Example:  

在此範例中,我們載入銷售人員清單,并使用國家/地區代碼表示其居住國家/地區。我們使用表格將國家/地區代碼對應至國家/地區,將國家/地區代碼取代為國家/地區名稱。對應表格中僅定義三個國家/地區,其他國家/地區代碼對應至 '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

Join the Analytics Modernization Program

Modernize by leveraging your QlikView investment to begin using Qlik Sense on the Cloud.

Want to know more?
Remove banner from view