0

私は MDX にまったく慣れていないので、次の t-sql クエリを MDX に取得するのに問題があります。

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]
);

これを行う方法はありますか?

ありがとう

4

1 に答える 1

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]);
于 2009-02-11T00:32:42.467 に答える