我有一個MDX查詢:MDX過濾通過更精細的數值
SELECT
({[Measures].[Sales Count]}) ON COLUMNS,
{Filter([Creation Date].[Day].Members,
([Creation Date].[Day].CurrentMember.Name >= '2016/09/01' AND
[Creation Date].[Day].CurrentMember.Name <= '2016/09/05'))} ON ROWS
FROM [Date Sales Schema]
它讓我選擇日期範圍內的銷售數量。 此外,我可以通過將查詢中的[創建日期] [[日期]替換爲[創建日期] [分鐘]來按分鐘過濾。 但如果我想過濾分鐘,並得到結果與銷售計數天,我不知道,我必須寫什麼查詢?
例如: 過濾從9月8日 - 15:57至9月10日 - 13:35 - 其結果應該是:
- 銷售的9月8日15:57的數量 - 23 :59
- 銷售9月9日的24小時
- 銷售10日的數月數00:00 - 13:35
這樣的查詢是決定近:
SELECT
{[Measures].[Sales Count]} ON COLUMNS
,Exists
(
[Creation Date].[Day].MEMBERS
,Filter
(
[Creation Date].[Minute].MEMBERS
,
[Creation Date].[Minute].CurrentMember.Name >= '2016/09/01 15:57'
AND
[Creation Date].[Minute].CurrentMember.Name <= '2016/09/10 15:57'
)
) ON ROWS
FROM [Date Sales Schema];
但是,例如,如果我如果銷售是在2016年2月10日23:55發,並且過濾器開始於2016年2月10日23:54,結果要求向我顯示10.02的所有銷售額。
下一個查詢計算所有時期的總和,並打印總和作爲衡量每天維:
WITH MEMBER [Measures].[Day Period Sales Count] AS Aggregate(Filter
(
[Creation Date].[Minute].MEMBERS
,
[Creation Date].[Minute].CurrentMember.Name >= '2016/09/01 07:27'
AND
[Creation Date].[Minute].CurrentMember.Name <= '2016/09/01 15:57'
)
)
SELECT
([Measures].[Day Period Sales Count]) ON COLUMNS ,{[Creation Date].[Day].[2016/09/01],[Creation Date].[Day].[2016/09/02]} ON ROWS
FROM [Date Sales Schema]
但不按天數劃分結果
嗯,在您第一次嘗試查詢後,我收到一個錯誤:第14行第1列令牌'(' – MagentaMill
)的語法錯誤如果我想按分鐘過濾,我可能不需要行:Filter ( [日期] .CurrentMember.Name> ='2016/09/01' AND [創建日期]。[日期] .CurrentMember.Name [日期] .MEMBERS , [創建日期] <='2016/09/05' ) – MagentaMill
@MagentaMill我以爲你想過濾日期和分鐘? – whytheq