UNION是MDX的最后一轮

时间:2009-02-10 12:40:05

标签: ssas mdx

我对MDX很新,我在向MDX提供以下t-sql查询时遇到了一些麻烦。

select distinct
  System
from Systen
  where System <> 'MIS'
UNION
  SELECT  'ALL'

到目前为止,我得到了类似的东西。但我不知道如何添加最后一行'ALL'。

SELECT 
  {} ON COLUMNS,
  {[Concesionario].[Sistema].[Sistema].ALLMEMBERS} ON ROWS
FROM 
(
  SELECT 
    -
      {
        [Concesionario].[Sistema].&[]
       ,[Concesionario].[Sistema].&[MIS]
      } ON COLUMNS
  FROM [DW]
);

知道怎么做吗?

由于

1 个答案:

答案 0 :(得分:1)

如果您的Sistema属性是可聚合的,那么它应该已经有一个“全部”成员。问题是你正在从Sistema级别[Concesionario]中选择。[Sistema]。[Sistema] .ALLMEMBERS因为你正在使用。

因此,您可以将查询更改为以下内容:

SELECT   
  {} ON COLUMNS,
  {[Concesionario].[Sistema].ALLMEMBERS} ON ROWS
FROM
 (
  SELECT
    {
        [Concesionario].[Sistema].&[]
       ,[Concesionario].[Sistema].&[MIS]
      } ON COLUMNS
  FROM [DW]
);

但是将所需的成员直接放在轴而不是使用子选择会更容易。

SELECT   
 {} ON COLUMNS,  
 {[Concesionario].[Sistema].[All] ,[Concesionario].[Sistema].&[MIS]  } ON COLUMNS  
FROM [DW]);