式 (MDX)
式は、結果を取得するために評価できる識別子、値、および演算子の組み合わせです。 データにアクセスしたり、データを変更したりするときに、複数の異なる場所でデータを使用できます。 たとえば、クエリで取得するデータの一部として式を使用したり、検索条件として式を使用して、一連の条件を満たすデータを検索したりできます。
単純式と複合式
式は、MDX では単純でも複雑でもかまいません。
単純式とは、次のような式です。
定数
定数は、MDX の 1 つの特定の値を表すシンボルです。 文字列、数値、および日付の値は、定数としてレンダリングできます。 数値定数とは異なり、文字列定数と日付定数は、単一引用符 (') 文字で区切る必要があります。
スカラー関数
MDX のスカラー関数は、評価のコンテキスト内で単一の値を返します。 ほとんどの MDX 式、ステートメント、スクリプトは単一のデータ要素ではなく、セルやメンバーなどのデータ要素のグループに対して反復的に評価されるため、この区別は、MDX がスカラー関数をどのように解決するかを理解するために重要です。 ただし、スカラー関数が評価される時点では、関数は通常、1 つのデータ要素を確認しています。
オブジェクト識別子
多次元データの性質上、MDX はオブジェクト指向です。 オブジェクト識別子は、MDX では単純な式と見なされます。 識別子の詳細については、「 識別子 (MDX)」を参照してください。
複合式は、演算子で結合されたこれらのエンティティの組み合わせから構築できます。
式の結果
単一の定数、変数、スカラー関数、または列名で構築された単純式の場合、式のデータ型、照合順序、有効桁数、小数点以下桁数、および値は、参照される要素のデータ型、照合順序、有効桁数、小数点以下桁数、および値です。 MDX が直接サポートするのは OLE VARIANT データ型だけなので、単純式で強制型変換が発生することはありません。
複合式の場合、データ型が異なる 2 つ以上の単純な式を使用する場合に強制型変換が発生する可能性があります。
式の例
次のクエリでは、定義が単純式である、計算されるメジャーの例を示します。
WITH
MEMBER MEASURES.CONSTANTVALUE AS 1
MEMBER MEASURES.SCALARFUNCTION AS [Date].[Calendar Year].CURRENTMEMBER.NAME
MEMBER MEASURES.OBJECTIDENTIFIER AS [Measures].[Internet Sales Amount]
SELECT
{ MEASURES.CONSTANTVALUE, MEASURES.SCALARFUNCTION, MEASURES.OBJECTIDENTIFIER } ON 0,
[Date].[Calendar Year].MEMBERS ON 1
FROM [Adventure Works]
式には、 などの [Measures].[Discount Amount] * 1.5
計算を指定することもできます。 次の例では、計算を使用して MDX SELECT ステートメントでメンバーを定義する方法を示します。
WITH
MEMBER [Measures].[Special Discount] AS
[Measures].[Discount Amount] * 1.5
SELECT
[Measures].[Special Discount] on COLUMNS,
NON EMPTY [Product].[Product].MEMBERS ON Rows
FROM [Adventure Works]
WHERE [Product].[Category].[Bikes]
このセクションの内容
トピック | 説明 |
---|---|
キューブ式とサブキューブ式の使用 | キューブ式とサブキューブ式を定義します。 |
ディメンション式の使用 | ディメンション式を定義します。 |
メンバー式の使用 | メンバー式を定義します。 |
組式の使用 | タプル式を定義します。 |
セット式の使用 | セット式を定義します。 |
スカラー関数の使用 | スカラー式を定義します。 |
空の値の操作 | 空の値とは何か、そのような値がどのように処理されるかを説明します。 |