Frage

Ich bin ganz neu in MDX und im einige Probleme mit der folgenden T-SQL-Abfrage MDX bekommen.

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

Bisher habe ich so etwas wie dieses bekam. Aber ich habe keine Ahnung, wie man diese letzte Zeile hinzufügen ‚ALL‘.

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

Jede Idee, wie dies zu tun?

Danke

War es hilfreich?

Lösung

Wenn Ihr Sistema Attribut aggregierbare ist, sollte es bereits ein „All“ Mitglied. Das Problem ist, dass Sie von der Sistema-Ebene sind die Auswahl von [Concesionario]. [Sistema]. [Sistema] .ALLMEMBERS, weil Sie das verwenden.

So können Sie Ihre Anfrage an folgende ändern könnte:

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

Aber es wäre noch einfacher, nur die Mitglieder setzen Sie direkt in der Achse wollen, anstatt eine Unterauswahl verwendet wird.

SELECT   
 {} ON COLUMNS,  
 {[Concesionario].[Sistema].[All] ,[Concesionario].[Sistema].&[MIS]  } ON COLUMNS  
FROM [DW]);
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top