2015-04-01 49 views
2

我只想在3月份獲得發票的不同銷售計數。我有這個MDX查詢。Axis0函數需要參數的元組集合表達式

我的MDX查詢:

select 
distinctcount([Measures].[Sales #]) on columns, 
--[Measures].[Sales #] on columns, 
non empty ([Customer].[Store Group].[Store Group]) on rows 
from 
(
select 
{ 
    [Calendar].[Month].[March 2015] 
} 
ON columns 
from [F1_SalesBI]) 

但我得到了下面的錯誤,當我試圖執行此。

Executing the query ... 
The Axis0 function expects a tuple set expression for the argument. A string or numeric expression was used. 
Execution complete 

回答

0

這裏是msdn定義: https://msdn.microsoft.com/en-us/library/ms145519.aspx

語法:

DistinctCount(Set_Expression)

當您使用辦法作爲參數你這樣做:

DistinctCount(Numeric_Expression) 

像下面這樣的東西應該有希望確定運行:

WITH 
    SET [mySet] AS 
    [Customer].[Store Group].[Store Group] * {[Measures].[Sales #]} 
    MEMBER [Measures].[setDistCount] AS 
    DistinctCount([mySet]) 
SELECT 
    { 
    [Measures].[setDistCount] 
    ,[Measures].[Sales #] 
    } ON 0 
,NON EMPTY 
    [Customer].[Store Group].[Store Group] ON 1 
FROM 
(
    SELECT 
    {[Calendar].[Month].[March 2015]} ON 0 
    FROM [F1_SalesBI] 
); 

要返回的發票數月嘗試以下操作:

WITH 
    SET [mySet] AS 
    {[Calendar].[Month].[March 2015]} * {[Measures].[Sales #]} 
    MEMBER [Measures].[setDistCount] AS 
    DistinctCount([mySet]) 
SELECT 
    { 
    [Measures].[setDistCount] 
    } ON 0 
FROM [F1_SalesBI]; 

如果上述返回1然後嘗試檢查通過以下腳本設置:

SELECT 
    {} on 0, 
    {[Calendar].[Month].[March 2015]} * {[Measures].[Sales #]} ON 0 
FROM [F1_SalesBI]; 

這只是返回1個成員?

這個怎麼樣(不含各地度量大括號)?:

SELECT 
    {} on 0, 
    {[Calendar].[Month].[March 2015]} * [Measures].[Sales #] ON 0 
FROM [F1_SalesBI]; 
+0

嗨, 感謝。這會返回[Sales#]的總和。銷售#表示發票號碼,我不想總結不需要的發票號碼。我需要統計有多少發票!請幫忙! – 2015-04-01 08:31:51

+0

嗨 - 我沒有使用'sum'函數。你能告訴我你的魔方另一個尺寸嗎? – whytheq 2015-04-01 08:50:11

+0

數量,淨銷售額,GP,GP%,COGS,COGS%,Sales#是我方塊中的度量。我需要知道我們在特定月份生成了多少發票(計數)? – 2015-04-01 08:58:05

相關問題