簡體   English   中英

通過多維成員過濾MDX

[英]MDX filtering by multiple dimension members

問題

我需要創建一個報告,該報告將列出一些符合某些條件的帳戶simulationDatestatisticPeriodregion

現在我的查詢看起來像這樣:

WITH MEMBER [Measures].[Count] as 1
SELECT [Measures].[Count] ON COLUMNS,
NON EMPTY 
Crossjoin(
[Account].[Account Number].ALLMEMBERS,
{[simulationDate].[day].&[10010101]},
{[statisticPeriod].[period].&[201201]},
{[region].[code].&[SO]}
)
ON COLUMNS
FROM [myWH]

這種跨維度過濾可以嗎?

使用*表示Crossjoin代替Crossjoin函數會稍微更現代:

WITH 
  MEMBER [Measures].[Count] AS 1 
SELECT 
  [Measures].[Count] ON COLUMNS
 ,NON EMPTY 
      [Account].[Account Number].ALLMEMBERS*
      {[simulationDate].[day].&[10010101]}*
      {[statisticPeriod].[period].&[201201]}*
      {[region].[code].&[SO]} ON COLUMNS
FROM [myWH];

我假設您的自定義指標[Measures].[Count]只是一個占位符?

如果您在COLUMNS上進行交叉COLUMNS ,則該表將非常寬,但這可能只是一個錯字:

WITH 
  MEMBER [Measures].[Count] AS 1 
SELECT 
  [Measures].[Count] ON COLUMNS, 
  NON EMPTY 
      [Account].[Account Number].ALLMEMBERS*
      {[simulationDate].[day].&[10010101]}*
      {[statisticPeriod].[period].&[201201]}*
      {[region].[code].&[SO]} ON ROWS
FROM [myWH];

您已在交叉連接的行前面添加了關鍵字NON EMPTY 這是告訴處理器以排除任何空行-為空[Measures].[Count] ....但這一措施是從來沒有空它總是等於1所以沒有跟隨Non Empty應返回一模一樣結果:

WITH 
  MEMBER [Measures].[Count] AS 1 
SELECT 
  [Measures].[Count] ON COLUMNS, 
      [Account].[Account Number].ALLMEMBERS*
      {[simulationDate].[day].&[10010101]}*
      {[statisticPeriod].[period].&[201201]}*
      {[region].[code].&[SO]} ON ROWS
FROM [myWH];

因此,就過濾而言,您什么都不做-您需要哪種過濾? 如果用多維數據集中的實際度量替換[Measures].[Count]並使用NON EMPTY,那么應該看到的行要少得多:

SELECT 
  [Measures].[ReplaceWithActualMeasure] ON COLUMNS, 
  NON EMPTY
      [Account].[Account Number].ALLMEMBERS*
      {[simulationDate].[day].&[10010101]}*
      {[statisticPeriod].[period].&[201201]}*
      {[region].[code].&[SO]} ON ROWS
FROM [myWH];

最后,我最終將過濾器用作列,並讓NON EMPTY子句負責過濾:

SELECT 
 NON EMPTY 
    {[simulationDate].[day].&[10010101]} *
    {[statisticPeriod].[period].&[201201]} *
    {[region].[code].&[SO]}
 ON COLUMNS,
 NON EMPTY
    [Account].[Account Number].ALLMEMBERS 
 ON ROWS
FROM [myWH]

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM