什麼是 Python 中的自我:真實世界的例子
什麼是 Python 中的自我:真實世界的例子
這篇文章將討論如何通過 xmSQL 和 LuckyTemplates 中的存儲引擎查詢來識別過濾器。當您過濾範圍時,您還將了解 VertiPaq 正在做什麼。這是一個重要的話題,因為過濾器中應用的基數是 DAX 性能的最大驅動力。
xmSQL 查詢是一種準續集語言,具有SELECT、FROM和WHERE子句。WHERE子句是您的過濾器,它是在您使用 或函數時引入的。過濾器存在於邏輯查詢計劃和存儲引擎查詢計劃中。
目錄
過濾器上下文轉換
此示例查詢具有帶總銷售額的函數和基於事實銷售額的事實銷售額乘以當前價格和銷售數量。對於此示例,您只需關注大於 300 的銷售額。
運行查詢會給你一個單行表結果,這不是很有幫助。
但是,如果您轉至 Server Timings 選項卡並掃描,您可以看到 xmSQL 語句,它為您提供有關查詢正在執行的操作的信息。
帶有$Expr0的WITH子句意味著正在計算一個數學表達式。接下來,從銷售數據表或事實銷售表中選擇表達式,然後在WHERE子句中根據設置的條件進行過濾。
在物理查詢計劃中,您可以看到Filter_Vertipaq運算符。這意味著查詢被下推到存儲引擎。盡可能使用存儲引擎作為過濾器,以獲得更快的 DAX 性能。
這是另一個使用SUMX而不是CALCULATETABLE函數的示例查詢。如果您運行查詢並查看 xmSQL 語句,您可以看到相同的結果、掃描和查詢計劃。
您可以使用SUMX或CALCULATETABLE函數來生成結果。但SUMX有時可能比CALCULATETABLE慢。最好使用後者來實現更流暢的 DAX 性能。
在 LuckyTemplates 中按範圍過濾
這是一個過濾範圍的示例查詢。過濾條件獲取當前價格大於等於300小於1000的銷售數據。
如果您運行查詢並查看 xmSQL 語句,您可以在WHERE子句中看到一個範圍。
如果查看物理查詢計劃,您可以看到 2 Filter_Vertipaq。這是因為你的過濾器的範圍在300到1000之間。這也意味著存儲引擎正在處理查詢和計算。
這是另一個使用OR子句的多值查詢,用“ ||表示 ”。
運行查詢後,您可以看到xmSQL 語句中WHERE子句的變化。xmSQL 將OR語句轉換為IN語句。
如果您在查詢中使用IN ,它將產生相同的 xmSQL 語句和結果。請記住,當您使用IN時,它必須是一個用大括號表示的表格。
但是使用OR或IN子句並不重要,因為當存儲引擎讀取它時,它知道它具有相同的 xmSQL 語句。這就是它給出相同結果 $939,012 的原因。
LuckyTemplates DAX 教程中的篩選器上下文簡介
:上下文和計算引擎
如何在 LuckyTemplates 中使用簡單篩選器
結論
在這篇博文中,您了解瞭如何在LuckyTemplates的 DAX 中設置篩選條件。篩選器定義可以從 LuckyTemplates 中的 DAX 查詢生成哪些結果。它們是必須建立以調用上下文轉換的重要實體。如果要獲取不同時間段或範圍的特定結果,必須在查詢中引入過濾上下文。
缺口
什麼是 Python 中的自我:真實世界的例子
您將學習如何在 R 中保存和加載 .rds 文件中的對象。本博客還將介紹如何將對像從 R 導入 LuckyTemplates。
在此 DAX 編碼語言教程中,了解如何使用 GENERATE 函數以及如何動態更改度量標題。
本教程將介紹如何使用多線程動態可視化技術從報告中的動態數據可視化中創建見解。
在本文中,我將貫穿過濾器上下文。篩選上下文是任何 LuckyTemplates 用戶最初應該了解的主要主題之一。
我想展示 LuckyTemplates Apps 在線服務如何幫助管理從各種來源生成的不同報告和見解。
了解如何在 LuckyTemplates 中使用度量分支和組合 DAX 公式等技術計算利潤率變化。
本教程將討論數據緩存物化的想法,以及它們如何影響 DAX 在提供結果時的性能。
如果直到現在你還在使用 Excel,那麼現在是開始使用 LuckyTemplates 來滿足你的業務報告需求的最佳時機。
什麼是 LuckyTemplates 網關?所有你必須知道的