如何使用直接探索 (Direct Discovery) 建立列表框和表格方塊

列表框

可以使用維度 (DIMENSION) 欄位和量值 (MEASURE) 欄位來建立列表框。在列表框運算式中使用量值 (MEASURE) 欄位時,應該使用 aggr() 函數顯示量值 (MEASURE) 欄位與維度 (DIMENSION) 欄位兩者的彙總值。使用列表框中的維度 (DIMENSION) 欄位選取的選項會在資料來源上產生 SQL 查詢,以便在記憶體中建立相關聯的表格。

詳細資料 (DETAIL) 欄位無法用於列表框。

備註:

由於列表框只會顯示維度 (DIMENSION) 欄位的唯一值,因此 QlikView 產生來顯示列表框資料的查詢會使用 DISTINCT (相異) 關鍵字擷取資料庫的資料。不過,某些資料庫會要求查詢包含群組依據 (GROUP BY) 類別,而非包含相異 (DISTINCT) 關鍵字。如果 Direct Discovery 表格來自需要 GROUP BY 的資料庫,您可以使用 DirectDistinctSupport 變數來變更 DIMENSION 查詢的預設行為。

請參閱: DirectDistinctSupport

表格方塊

表格方塊可顯示所有直接探索 (Direct Discovery) 欄位類型,並且可用來 向下探查包含直接探索 (Direct Discovery) 欄位的記錄詳細資料。表格方塊是唯一的 QlikView 物件,可在其中使用 Direct Query 載入陳述式中欄位指定的詳細資料 (DETAIL)。

在表格方塊中使用直接探索欄位時,會設定臨界值以限制所顯示的列數。預設臨界值為 1000 個記錄。預設臨界值設定可透過設定 載入指令碼中的 DirectTableBoxListThreshold 變數加以變更。例如︰

SET DirectTableBoxListThreshold=5000

此臨界值設定僅會套用至包含直接探索 (Direct Discovery) 欄位的表格方塊。僅包含記憶體內欄位的表格方塊不會受限於 DirectTableBoxListThreshold 設定。

直到選項比臨界值限制的記錄要少的時候,表格方塊才會顯示欄位。

直接探索 (Direct Discovery) 欄位可以與表格方塊中的記憶體內欄位混用。僅包含直接探索 (Direct Discovery) 欄位的表格方塊必須包含維度 (DIMENSION) 欄位。

包含直接探索 (Direct Discovery) 資料的表格方塊會顯示所有選取的列,即使其中包含相同的資料也會全部顯示。另一方面,包含記憶體內資料的表格方塊有相同的資料時,只會顯示其中一個選取的列。