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

指令碼運算式

LOAD 陳述式和 SELECT 陳述式中都可使用運算式。此處所述的語法和函數適用於 LOAD 陳述式,但不適用於 SELECT 陳述式,因為後者是由 ODBC 驅動程式所解譯,而非由 Qlik Sense 所解譯。不過,大部分的 ODBC 驅動程式通常都可解譯以下所述的一些函數。

運算式包含函數、欄位和運算子,結合在一個語法中。

Qlik Sense 指令碼中所有的運算式皆會傳回一個數字及/或字串,依適合的情況而定。邏輯函數和運算子對於 False 會傳回 0,對於 True 會傳回 -1。數字和字串之間的轉換是隱含的。邏輯運算子和函數會將 0 解譯為 False,而將其他都解譯為 True

運算式的一般語法為:

expression ::= (constant constant |
  fieldref |
  operator1 expression |
  expression operator2 expression |
  function |
  ( expression ) )

其中:

constant 為以一般單引號括住的字串 (文字、日期或時間),或為數字。常數的寫法不會包含千位分隔符號,但會加上小數點作為小數點分隔符號。

fieldref 為載入表格的欄位名稱。

operator1 為一元運算子 (會影響右側的一個運算式)。

operator2 為二元運算子 (會影響兩側各一個運算式)。

function ::= functionname( parameters)

parameters ::= expression { , expression }

參數的數目和類型非為任意的,會視所用的函數而定。

因此,運算式和函數可任意構成巢狀,只要運算式傳回可解譯的值,Qlik Sense 就不會產生任何錯誤訊息。