跳到主要內容 跳至補充內容

Dual - 指令碼與圖表函數

Dual() 將一個數字與一個字串組合至單一記錄,例如記錄的數字表示法可用於排序及計算,而字串值可用於顯示。

語法:  

Dual(text, number)

傳回的資料類型: 雙值

資訊備註所有雙值回傳值是向右對齊。
引數
引數描述
text要與數字引數組合使用的字串值。
number要與字串引數中字串組合使用的數字。

Qlik Sense 中,所有欄位值都可能是雙值。這表示欄位值可以同時具有數值和文字值。範例是可以具有數值 40908 和文字表示法 '2011-12-31' 的日期。

資訊備註讀入同一個欄位的數個資料項目有不同的字串表示法,但是卻有相同的有效數字表示法時,則這些資料項目將共用第一個出現的字串表示法。
提示備註dual 函數一般用於指令碼前端,並會在其他資料讀入相關的欄位之前使用,以便建立將在篩選窗格之中顯示的第一個字串表示法。
範例:圖表運算式
範例描述

Dual(IF(DayOfWeek = 0, 'Monday',

IF(DayOfWeek = 1, 'Tuesday',

If(DayOfWeek = 2 ,'Wednesday',

If(DayOfWeek = 3 ,'Thursday', If(DayOfWeek = 4 ,'Friday', If(DayOfWeek = 5 ,'Saturday', If(DayOfWeek = 6 ,'Sunday'

))))))), DayOfWeek)

欄位 DayOfWeek 可以在視覺化中作為維度使用。在表格中,星期幾會自動排序為正確的數字順序,而不使用字母順序。

Dual(Pick( Priority , 'Low','Medium','High'), Priority)欄位 Priority 可以在視覺化中作為維度使用。在表格中,欄位 Priority 會自動排序為正確的數字順序,而不使用字母順序。
Dual('Q' & Ceil(Month(Date)/3), Ceil(Month(Date)/3))欄位 Date 可以在視覺化中作為維度使用。建立文字值 Q1Q4 並將數值 1 指派到 4
Dual(WeekYear(Date) & '-W' & Week(Date), WeekStart(Date))

欄位 Date 可以在視覺化中作為維度使用。此範例建立表單 '2012-W22' 的文字值,同時,指派對應於週第一天日期數的數值,例如:41057

範例:載入指令碼
範例描述

將下列範例新增至您的指令碼并予以執行。

Load dual ( NameDay,NumDay ) as DayOfWeek inline

[ NameDay,NumDay

Monday,0

Tuesday,1

Wednesday,2

Thursday,3

Friday,4

Saturday,5

Sunday,6 ];

例如,欄位 DayOfWeek 可以在視覺化中作為維度使用。在表格中,星期幾會自動排序為正確的數字順序,而不使用字母順序。
Load Dual('Q' & Ceil(Month(Now())/3), Ceil(Month(Now())/3)) as Quarter AutoGenerate 1;此範例會尋找目前季度。當 Now 函數在一年中的前三個月中執行時,它會顯示為 Q1,針對第二個三個月時,會顯示為 Q2,依此類推。然而,當用於排序中時,欄位 Quarter 將用作數值:1 至 4。
Dual('Q' & Ceil(Month(Date)/3), Ceil(Month(Date)/3)) as Quarter如前一個範例所示,建立欄位 Quarter,使用文字值 Q1Q4,并指派數值 14。為了在指令碼中使用此項目,必須載入 Date 的值。
Dual(WeekYear(Date) & '-W' & Week(Date), WeekStart(Date)) as YearWeek此範例建立欄位 YearWeek,文字值來自表單 2012-W22,同時,指派對應於週第一天日期數的數值,例如:41057。為了在指令碼中使用此項目,必須載入 Date 的值。

範例 - Dual 基礎事項

範例 - Dual 使用情境

此頁面是否對您有幫助?

若您發現此頁面或其內容有任何問題——錯字、遺漏步驟或技術錯誤——請告知我們可以如何改善!