在指令碼中使用引號

可在指令碼陳述式中以多種不同方式使用引號。

LOAD 陳述式內

LOAD 陳述式中,應使用下列符號做為引號:

欄位名稱
描述 符號 代碼點 範例

雙引號

" " 34 "字串"
方括弧 [ ] 91, 93 [字串]
重音符號 ` ` 96 `字串`
字串常值
描述 符號 代碼點 範例
單引號

' '

39 '字串'

SELECT 陳述式內

若是 ODBC 驅動程式解譯的 SELECT 陳述式,用法可能有所不同。通常在欄位與表格名稱中應使用直雙引號 (Alt + 0034),在常值中應使用直單引號 (Alt + 0039),並避免使用重音符號。不過,有些 ODBC 驅動程式不只接受重音符號做為引號,且還偏好使用重音符號。若是如此,所產生的 SELECT 陳述式會包含重音符號引號。

Microsoft Access 引號範例

Microsoft Access ODBC Driver 3.4 (包括在 Microsoft Access 7.0 中) 在分析 SELECT 陳述式時,接受下列引號:

欄位名稱與表格名稱:

  • [ ]
  • " "
  • ` `

字串常值:

  • ' '

其他資料庫可能有不同的慣例。

LOAD 陳述式外部

LOAD 陳述式外,Qlik Sense 預期運算式的位置,雙引號代表變數參考而不是欄位參考。若您使用雙引號,括住的字串將會解譯為變數,並將使用該變數值。

內容外欄位參考與表格參考

某些指令碼函數會參考已建立的欄位,或 LOAD 陳述式輸出內的欄位,例如 Exists()Peek()。這些欄位參考稱為內容外欄位參考,與參考到內容內欄位的來源欄位參考相反,內容內是指在 LOAD 陳述式的輸入表格內。

應該將內容外欄位參考與表格參考視為常值,因此需要使用單引號。

名稱與常值間的差異

比較下列範例即可更清楚地瞭解名稱與常值間的差異:

Example:  

'Sweden' as Country

當在 LOADSELECT 陳述式中使用此運算式做為欄位清單的部分時,文字字串 "Sweden" 將會當成欄位值載入至 Qlik Sense 欄位 "Country"。

Example:  

"land" as Country

當在 LOADSELECT 陳述式中使用此運算式做為欄位清單的部分時,資料庫欄位的內容或名為 "land" 的表格資料行將會當成欄位值載入至 Qlik Sense 欄位 "Country"。這表示 land 將會視為欄位參考。

數字與字串常值間的差異

比較下列範例即可更清楚地瞭解數字與字串常值間的差異。

Example:  

'12/31/96'

使用此字串做為運算式的部分時,其在第一個步驟將會被解譯為文字字串 "12/31/96",然後再被解譯為日期 (如果日期格式是 ‘MM/DD/YY’)。在此情況下,其會儲存為雙值,同時具有數值與文字表示法。

Example:  

12/31/96

使用此字串做為運算式部分時,其會以數值解譯為 12 除以 31 除以 96

在字串中使用引號

若字串中包含可作為引號使用的字元,則在引用字串時清楚指示字串的開始和結束位置十分重要。若字串沒有正確引用,指令碼將無法運作,或將會以不正確的方式載入資料。

有兩種方式可引用包含引號的字串。

使用特定引號以引用字串

選擇字串中未使用的引號,並用來引用整個字串。Qlik Sense 將會使用特定引號,以決定字串的開始和結束位置。

下列任一引號可用來引用整個字串:

  • 雙引號 " "
  • 方括弧 [ ]
  • 重音符號 ` `
  • 單引號 ' '

Example:  

[表格 '1 "2"]

方括弧用來引用字串。字串載入為:表格 '1 "2"

'字串 `Name1` "Name2'

單引號用來引用字串。字串載入為:字串 `Name1` "Name2

使用逸出字元

逸出字元是用來引用字串之引號的附加執行個體。必須在字串中出現之引號的每個執行個體旁新增這些逸出字元。在字串內部使用所有引號時,您需要在用來引用字串的相同類型引號旁新增逸出字元。若您要使用已在字串中使用的引號,也能使用逸出字元。

只能使用下列符號作為逸出字元:

  • 雙引號 " "
  • 方括弧 [ ]
  • 單引號 ' '

Example:  

"Michael said ""It's a beautiful day""."

若您使用雙引號 " " 引用字串,則您必須在字串內部使用的每個雙引號旁另外新增雙引號。

此字串載入為 Michael said "It's a beautiful day". 透過使用逸出字元 ""Qlik Sense 資料載入編輯器能夠理解哪些雙引號是字串的一部分,以及哪個引號指示字串結尾。縮寫 It's 中使用的單引號 ' 不需要逸出,因為這不是用來引用字串的符號。

Example:  

'Michael said: "It''s a beautiful day".'

若您使用單引號引用此字串,則您必須在字串內部使用的每個單引號旁另外新增單引號。

此字串載入為 Michael said "It's a beautiful day". 用於引用 Michael 說話內容的雙引號 " 不需要逸出,因為這不是用來引用字串的符號。

Example:  

[Michael said [It's a "beautiful day]].]

方括弧 [ ] 的運作方式與其他兩種引號不同。若您要使用括弧作為逸出字元,您只能在右側方括弧 ] 旁邊另外新增括弧,而非在左側方括弧 [ 旁邊。

此字串載入為 Michael said [It's a "beautiful day]. 只有右方括弧 ] 逸出。字串中使用的單引號 ' 和雙引號 " 不需要逸出,因為這些引號不是用來引用字串。