Excel数据透视表结果vs执行MDX查询结果



我正在执行从连接到SQL Server Management Studio中的OLAP Cube的Excel数据透视表检索的MDX查询。我已经使用SQL分析器检索了MDX查询,同时在Excel中刷新它。

我只是在数据透视表的"行"框中拖动一个维度属性。Excel显示了所有的客户id,每一行一个(就像T-SQL中的简单选择一样)。

我注意到,虽然Excel在行上显示选定的维度属性,但在管理工作室中使用检索的MDX查询显示它在列上。

我从SQL Profiler得到的MDX查询是:

SELECT NON EMPTY Hierarchize (
 {
  DrilldownLevel (
   { [CustomerDimension].[CustomerId].[All] }
   ,
   ,
   , INCLUDE_CALC_MEMBERS
  )
 }
) DIMENSION PROPERTIES PARENT_UNIQUE_NAME
, HIERARCHY_UNIQUE_NAME ON COLUMNS
FROM [DWH] CELL PROPERTIES VALUE
, FORMAT_STRING
, LANGUAGE
, BACK_COLOR
, FORE_COLOR
, FONT_FLAGS

有谁能解释为什么吗?

因为您没有请求多个AxisCOLUMNS为Axis的别名 (0)。对于您来说,以"Rows"显示形式读取数据可能更容易。对于excel,重要的是每个轴上的信息。

我想添加一个额外的信息来帮助你在你的MDX探索。

Olap数据透视扩展

我与这个扩展没有任何关系,但它真的很有用。

编辑:

您可以将您的轴(0)设置为空set { }并在ROWS轴中显示您的客户。

SELECT
    { } on 0,
    [CustomerDimension].[CustomerId].[All].CHILDREN ON 1
FROM [DWH]

最新更新