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

樞紐分析表中的列加總

QlikView 連續表對於簡單列加總和計算運算式總計之間的總計提供一個選擇。QlikView 樞紐分析表則缺乏此選擇。樞紐分析表總計一律都會計算為運算式總計。

這一般都不會有問題,因為兩者不同時,列總計的加總很少有關聯。

警告備註除了單純加總之外,對於任何類型的彙總使用列加總時,應該特別小心。

提出這一點警告之後,以下章節將說明列總計的加總是所需結果的範例。

範例:  

在本範例中,三個不同班級的三人團隊按照年級而獲得分數。團隊可以從個別年級的團隊之中選出最高的分數,然後將三個最高分數加總。從指令碼讀取下列資料:

Example table data with Class, Name, and Score fields

具有作為維度的 Class 及作為運算式的 Max(Score) 之連續表會產生下列加總:

Example straight table with sum of rows

樞紐分析表一律會計算為運算式總計而非列加總,若將連續表轉換為的樞紐分析表,會發生一個問題:

Example pivot table with expression total

在此特別的情況下,總計 12 是我們預期的結果,5 則並不正確。在這種情況下,可在運算式中使用 Aggr 函數,而不是在維度中使用。

原始運算式包含在 Aggr 函數中,使用周圍圖表的維度作為 Aggr 函數的維度。現在此套件作為 Sum 彙總的引數使用。該表格現在將顯示預期的總計:

Example pivot table with sum of rows

進階彙總函數的效用在於它對於各列都會評估出單一值。這是因為維度對於各個原始資料列顯然只有一個可能值。由於內部維度和運算式對於周圍圖表均相同,因此各個值當然與沒有 Sum 和進階彙總函數包圍的結果相同。

不過,針對總計列,進階彙總函數將對各個維度欄位值傳回三個值。這些值將透過 Sum 彙總予以加總。雖然結果仍然是運算式總計,不過也等於列的加總。

瞭解更多資訊

 

此頁面是否對您有幫助?

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

加入分析現代化計畫

Remove banner from view

透過分析現代化程式進行現代化而不犧牲寶貴的 QlikView 應用程式。 按一下這裡 取得更多資訊或聯繫: ampquestions@qlik.com