Direct Query
DIRECT QUERY 陳述式允許您透過使用 Direct Discovery 功能的
Syntax:
DIRECT QUERY DIMENSION fieldlist [MEASURE fieldlist] [DETAIL fieldlist] FROM tablelist
[WHERE where_clause]
DIMENSION、MEASURE 及 DETAIL 關鍵字可以按任何順序使用。
所有的 DIRECT QUERY 陳述式都需要有 DIMENSION 和 FROM 關鍵字子句。FROM 關鍵字必須出現在 DIMENSION 關鍵字之後。
緊接著 DIMENSION 關鍵字之後所指定的欄位會載入於記憶體內,並可用於在記憶體內資料和 Direct Discovery 資料之間建立關聯。
使用 MEASURE 關鍵字,您可以定義 Qlik Sense 在「中繼層級」才會識別的欄位。在資料載入處理程序期間,量值欄位的實際資料僅位於資料庫上,並且由視覺化中使用的圖表運算式以臨機操作為基礎進行擷取。
一般來說,含離散值、要作為維度的欄位應以 DIMENSION 關鍵字載入,而僅要用於彙總的數字應以 MEASURE 關鍵字選取。
DETAIL 欄位可提供資訊或詳細資料 (如 [註解] 欄位),使用者可顯示在向下探查詳細資料的表格方塊中。DETAIL 欄位無法用於圖表運算式。
設計上,DIRECT QUERY 陳述式對於支援
當使用者知道要查詢的資料庫為何,並且想要在
- 在 DIMENSION 和 MEASURE 子句中作為欄位運算式
- 作為 WHERE 子句的內容
範例:
DIMENSION Dim1, Dim2MEASURENATIVE ('X % Y') AS X_MOD_Y
DIMENSION Dim1, Dim2MEASURE X, YFROM TableNameWHERE NATIVE ('EMAIL MATCHES "\*.EDU"')
Arguments:
引數 | 描述 |
---|---|
|
欄位規格的逗號分隔清單, fieldname {, fieldname}. 欄位規格可以是欄位名稱,在此情況下,相同名稱會用於資料庫資料行名稱和 Qlik Sense 欄位名稱。欄位規格也可以是「欄位別名」,在此情況下,資料庫運算式或資料行名稱會使用 Qlik Sense 欄位名稱。 |
|
要從其中載入資料之資料庫中表格或檢視的名稱清單。這通常是其中包含在資料庫上執行 JOIN 的檢視。 |
|
資料庫 WHERE 子句的完整語法不限於此,但大部分的 NOT 是一元運算子,而不是在某些關鍵字上的修飾詞。 範例: WHERE x > 100 AND "Region Code" IN ('south', 'west')
WHERE Code IS NOT NULL and Code LIKE '%prospect'
WHERE NOT X in (1,2,3)
最後一個範例不可編寫為︰ WHERE X NOT in (1,2,3)
|
Example:
此範例會使用稱為
例如,SELECT 陳述式:
SalesOrderID,
RevisionNumber,
OrderDate,
SubTotal,
TaxAmt
FROM MyDB.Sales.SalesOrderHeader;
可以變更為下列 DIRECT QUERY 陳述式:
DIMENSION
SalesOrderID,
RevisionNumber
MEASURE
SubTotal,
TaxAmt
DETAIL
OrderDate
FROM MyDB.Sales.SalesOrderHeader;