ssas - SQL 到 MDX Where IN 子句

标签 ssas mdx

我有一种情况需要制定 MDX 查询。相应的 SQL 查询类似于:

SELECT no_of_downloads 
FROM   table_1
WHERE  project_code IN ('abc', 'def', 'ghi' , .....)

我制定了以下 MDX 查询,但我一次只能将其用于一个项目代码。

SELECT 
  [Measures].[#Activity] ON COLUMNS
 ,Filter
  (
    [Organisation Dimension].[Txt Project Code].MEMBERS
   ,
    [Organisation Dimension].[Txt Project Code].CurrentMember.Name = 'KM_BNG'
  ) ON ROWS
FROM [Activity Cube]
WHERE 
  (
    [Activity Dimension].[Txt Activity Name].&[Download]
   ,[System Dimension].[Txt System Name].&[KShop] //ENTER CODE HERE//
   ,[Time Dimension].[Fiscal Hierarchy].[Fiscal Half Year Name].&[2014-04-01T00:00:00]
  );

如何在列表中添加更多项目代码?

最佳答案

或者,如果您真的热衷于使用 WHERE 子句,则只需将 FrankPI 创建的 SET 移动到 WHERE 子句中。

WHERE子句在概念上是一个轴,作为 MDX 的规则,同一层次结构不能放置在多个轴上,您需要将其从中移动ROWS 像这样:

SELECT 
  [Measures].[#Activity] ON 0
FROM [Activity Cube]
WHERE 
  (
    [Activity Dimension].[Txt Activity Name].&[Download]
   ,[System Dimension].[Txt System Name].&[KShop]
   ,{
       [Organisation Dimension].[Txt Project Code].[KM_BNG],
       [Organisation Dimension].[Txt Project Code].[other name],
       [Organisation Dimension].[Txt Project Code].[third name]
    }
   ,[Time Dimension].[Fiscal Hierarchy].[Fiscal Half Year Name].&[2014-04-01T00:00:00]
  );

在极端情况下,您有 50 个要包含的层次结构 [Organisation Dimension].[Txt Project Code] 成员,那么在多维数据集脚本中可能会更好地对其进行管理。您可以创建一个集合 [myTxtProjectCodes] 然后 MDX 会简单得多:

SELECT 
  [Measures].[#Activity] ON 0
FROM [Activity Cube]
WHERE 
  (
    [Activity Dimension].[Txt Activity Name].&[Download]
   ,[System Dimension].[Txt System Name].&[KShop]
   ,{
       [myTxtProjectCodes]
    }
   ,[Time Dimension].[Fiscal Hierarchy].[Fiscal Half Year Name].&[2014-04-01T00:00:00]
  );

关于ssas - SQL 到 MDX Where IN 子句,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26971891/

相关文章:

SSAS测量值聚合误差

ssas - 在 MDX 表达式中按名称而不是 ID 引用成员

excel - 名为 MDX 场的动力枢轴

sas - 通过过滤度量值在 MDX 中定义计算成员

MDX - TopCount 加 'Other' 或 'The Rest'

ssas - 从一维表到单个事实表的多个联接

SSAS面试问题

sql - 通过源表创建维度和事实表

excel - 对 Analysis Services 的 VBA Repitive MDX 查询

ssas - MDX - 需要 3rd + 维度示例