對於奇怪的問題標題,我很抱歉對於我正在嘗試完成的任務設置單詞。MDX在不使用選擇集的情況下設置的最大值總和
我有一個OrderLine Fact表。每行都有一個產品(類別/子類別/產品)。我需要一個度量來返回在ProductCategory中有一個或多個Orderlines的Orders(而不是OrderLines)的數量。由於訂單事實表沒有鏈接到產品,我必須從OrderLine事實表中獲取這些數據。
我對MDX的認識是相當有限的,從我能想到的角度來看,我發現的就是將每個OrderLine的「Number of Orders」(1或-1)度量值並在OrderNumber中放入一個退化維數OrderLine表。有了這個,我想我可以通過OrderLine Fact Table中的OrderNumber獲得MIN的「訂單數」的SUM。它的工作原理:
WITH MEMBER [Measures].[Test] AS
SUM([Order Number].[Order Hierarchy].CURRENTMEMBER, MIN([Order Number].[Order Hierarchy].CURRENTMEMBER.CHILDREN, [Measures].[Number of Orders]))
SELECT
{[Measures].[Number of Orders],[Measures].[Test]} ON 0,
{[Order Number].[Order Number].&[110100000030-BLA-01745892],[Order Number].[Order Number].&[110100000031-BLA-0]} ON 1
FROM SalesCube
有關訂單有3條線路,它將返回給我3 [Measures].[Number of Orders]
和1 [Measures].[Test]
。現在
我的問題是,如果我想按產品類別來執行這個查詢:
WITH MEMBER [Measures].[Test] AS
SUM([Order Number].[Order Hierarchy].CURRENTMEMBER, MIN([Order Number].[Order Hierarchy].CURRENTMEMBER.CHILDREN, [Measures].[Number of Orders]))
SELECT
{[Measures].[Number of Orders],[Measures].[Test]} ON 0,
{[Products].[Category Hierarchy].MEMBERS} ON 1
FROM SalesCube
它給我的MIN所有OrderLines這是(-1),並將其歸納爲-1。我需要的是查詢返回分鐘「訂單數」的總和,包含產品類別,而無需對行軸使用「訂單號」,每個「訂單號」。
這是否有意義?
如果訂單無法取消,這將是它,它會很容易但可悲的是,訂單可以取消或撤銷。這就是爲什麼我說「訂單數量」字段可能是1或-1(-1 =顛倒)。我必須使用SUM來獲得正確數量的訂單。 – Nick
@尼克我編輯了我的答案。 – FrankPl
太棒了!這正是我需要的,它乾淨而簡單!謝謝! – Nick