メンバー、組、およびセットの操作 (MDX)

適用対象: SQL Server Analysis Services Azure Analysis Services Fabric/Power BI Premium

MDX には、1 つ以上のメンバー、組、またはセットを返す操作や、メンバー、組、またはセットに対する操作を行うための関数が各種用意されています。

メンバー関数

MDX には、ディメンション、レベル、セット、組などの他の MDX エンティティからメンバーを取得するための関数がいくつかあります。 たとえば、 FirstChild 関数はメンバーに対して操作を実行してメンバーを返す関数です。

時間ディメンションの最初の子メンバーを取得するには、次の例のように、明示的にメンバーを指定できます。

SELECT [Date].[Calendar Year].[CY 2001] on 0  
FROM [Adventure Works]  
  

または、次の例のように、 FirstChild 関数を使用して同じメンバーを返すこともできます。

SELECT [Date].[Calendar Year].FirstChild on 0  
FROM [Adventure Works]  
  

MDX メンバー関数の詳細については、「 MDX 関数リファレンス (MDX)」を参照してください。

組関数

MDX には、組を返す関数がいくつかあります。これらの関数は、組を使用できる任意の箇所で使用できます。 たとえば、 Item (Tuple) (MDX) 関数を使用して、set から最初のタプルを抽出できます。これは、セットが 1 つのタプルで構成されていて、そのタプルをタプルを必要とする関数に指定する場合に非常に便利です。

次の例では、列軸上の組のセット内から最初の組を返します。

SELECT {  
   ([Measures].[Reseller Sales Amount]  
      ,[Date].[Calendar Year].[CY 2003]  
   )  
, ([Measures].[Reseller Sales Amount]  
      ,[Date].[Calendar Year].[CY 2004]  
   )  
}.Item(0)  
ON COLUMNS   
FROM [Adventure Works]  

タプル関数の詳細については、「 MDX 関数リファレンス (MDX)」を参照してください。

集合関数

MDX には、セットを返す関数がいくつかあります。 セットを取得する方法は、明示的に組を入力して中かっこで囲むだけではありません。 セットを返すメンバー関数の詳細については、「 MDX の主要な概念 (Analysis Services)」を参照してください。 他にも多くのセット関数があります。

コロン演算子を使用すれば、メンバーの順序を指定してセットを作成できます。 たとえば、次の例のセットには、2002 年度の第 1 四半期から第 4 四半期までの組が含まれます。

SELECT   
   {[Calendar Quarter].[Q1 CY 2002]:[Calendar Quarter].[Q4 CY 2002]}   
ON 0  
FROM [Adventure Works]  

コロン演算子を使用してセットを作成しない場合は、次の例のような組を指定することで、同じメンバー セットを作成できます。

SELECT {  
   [Calendar Quarter].[Q1 CY 2002],   
   [Calendar Quarter].[Q2 CY 2002],   
   [Calendar Quarter].[Q3 CY 2002],   
   [Calendar Quarter].[Q4 CY 2002]  
   } ON 0  
FROM [Adventure Works]  
  

コロン演算子は内包的な関数です。 コロン演算子の両側のメンバーはどちらも結果セットに含まれます。

セット関数の詳細については、「 MDX 関数リファレンス (MDX)」を参照してください

配列関数

配列関数は、セットに対して操作を実行して配列を返します。 配列関数の詳細については、「 MDX 関数リファレンス (MDX)」を参照してください。

階層関数

階層関数は、メンバー、レベル、階層、または文字列に対して操作を実行して、階層を返します。 階層関数の詳細については、「 MDX 関数リファレンス (MDX)」を参照してください。

レベル関数

レベル関数は、メンバー、レベル、または文字列に対して操作を実行して、レベルを返します。 レベル関数の詳細については、「 MDX 関数リファレンス (MDX)」を参照してください

論理関数

論理関数は、MDX 式に対して操作を実行し、その式の組、メンバー、またはセットに関する情報を返します。 たとえば、 IsEmpty (MDX) 関数は、式が空のセル値を返したかどうかを評価します。 論理関数の詳細については、「 MDX 関数リファレンス (MDX)」を参照してください。

数値関数

数値関数は、MDX 式に対して操作を実行してスカラー値を返します。 たとえば、 Aggregate (MDX) 関数は、指定したセット内のタプルに対するメジャーを集計することによって計算されたスカラー値を返します。 数値関数の詳細については、「 MDX 関数リファレンス (MDX)」を参照してください。

文字列関数

文字列関数は、MDX 式に対して操作を実行して文字列を返します。 たとえば、 UniqueName (MDX) 関数は、ディメンション、階層、レベル、またはメンバーの一意の名前を含む文字列値を返します。 文字列関数の詳細については、「 MDX 関数リファレンス (MDX)」を参照してください。

参照

MDX の主な概念 (Analysis Services)
MDX クエリの基礎 (Analysis Services)
MDX 関数リファレンス (MDX)