MDX データ操作 - CREATE SUBCUBE
指定したキューブまたはサブキューブのキューブ空間を、指定したサブキューブに再定義します。 このステートメントは、後続の操作のために、見かけ上のキューブ領域を変更します。
構文
CREATE SUBCUBE Cube_Name AS Select_Statement
| NON VISUAL ( Select_Statement )
引数
Cube_Name
制限されているキューブまたはパースペクティブの名前を提供する有効な文字列式。サブキューブの名前になります。
Select_Statement
WITH 句、NON EMPTY 句、または HAVING 句が含まれておらず、ディメンションまたはセルのプロパティを要求しない有効な多次元式 (MDX) の SELECT 式です。
Select ステートメントと NON VISUAL 句の詳細な構文の説明については、「SELECT ステートメント (MDX)」を参照してください。
解説
サブキューブの定義で既定のメンバーが除外されると、座標はそれに応じて変更されます。 集計できる属性の場合、既定のメンバーは [すべて] メンバーに移動されます。 集計が不可能な属性の場合、既定のメンバーはサブキューブ内に存在するメンバーに移動します。 次の表に、サブキューブと既定のメンバーの組み合わせの例を示します。
元の既定のメンバー | 集計可能/不可能 | サブセレクト | 変更後の既定のメンバー |
---|---|---|---|
Time.Year.All | はい | {Time.Year.2003} | 変更なし |
Time.Year。[1997] | はい | {Time.Year.2003} | Time.Year.All |
Time.Year。[1997] | いいえ | {Time.Year.2003} | Time.Year。[2003] |
Time.Year。[1997] | はい | {Time.Year.2003, Time.Year.2004} | Time.Year.All |
Time.Year。[1997] | いいえ | {Time.Year.2003, Time.Year.2004} | Time.Year のいずれか。[2003] または Time.Year.[2004] |
[All] のメンバーは、常にサブキューブ内に存在します。
サブキューブのコンテキストで作成されたセッション オブジェクトは、サブキューブが削除されると削除されます。
サブキューブの詳細については、「 MDX でのサブキューブの構築 (MDX)」を参照してください。
例
次の例では、カナダの国に存在するメンバーに見かけのキューブ空間を制限するサブキューブを作成します。 その後、 MEMBERS 関数を使用して Geography ユーザー定義階層の Country レベルのすべてのメンバーを返し、カナダの国のみを返します。
CREATE SUBCUBE [Adventure Works] AS
SELECT [Geography].[Country].&[Canada] ON 0
FROM [Adventure Works]
SELECT [Geography].[Country].[Country].MEMBERS ON 0
FROM [Adventure Works]
次の例では、見かけ上のキューブ空間を Products.Category の {Accessories, Clothing} メンバーと Resellers の {[Value Added Reseller], [Warehouse]} に制限するサブキューブを作成します。[ビジネスの種類]。
CREATE SUBCUBE [Adventure Works] AS
Select {[Category].Accessories, [Category].Clothing} on 0,
{[Business Type].[Value Added Reseller], [Business Type].[Warehouse]} on 1
from [Adventure Works]
次の MDX を使用して、Products.Category および Resellers.[Business Type] 内のすべてのメンバーのサブキューブを照会します。
select [Category].members on 0,
[Business Type].members on 1
from [Adventure Works]
where [Measures].[Reseller Sales Amount]
次の結果が生成されます。
ビジネスの種類とカテゴリ | All Products | Accessories | Clothing |
---|---|---|---|
All Resellers | $2,031,079.39 | $506,172.45 | $1,524,906.93 |
Value Added Reseller | $767,388.52 | $175,002.81 | $592,385.71 |
Warehouse | $1,263,690.86 | $331,169.64 | $932,521.23 |
NON VISUAL 句を使用してサブキューブを削除して再作成すると、Products.Category および Resellers のすべてのメンバーの真の合計を保持するサブキューブが作成されます。[ビジネスタイプ]:サブキューブに表示されているかどうか。
CREATE SUBCUBE [Adventure Works] AS
NON VISUAL (Select {[Category].Accessories, [Category].Clothing} on 0,
{[Business Type].[Value Added Reseller], [Business Type].[Warehouse]} on 1
from [Adventure Works])
上記から同じ MDX クエリを発行します。
select [Category].members on 0,
[Business Type].members on 1
from [Adventure Works]
where [Measures].[Reseller Sales Amount]
次の異なる結果が生成されます。
ビジネスの種類とカテゴリ | All Products | Accessories | Clothing |
---|---|---|---|
All Resellers | $80,450,596.98 | $571,297.93 | $1,777,840.84 |
Value Added Reseller | $34,967,517.33 | $175,002.81 | $592,385.71 |
Warehouse | $38,726,913.48 | $331,169.64 | $932,521.23 |
[All Products] および [All Resellers] の列と行それぞれに、表示されているメンバーだけでなく、すべてのメンバーの合計が含まれます。
参照
MDX の主な概念 (Analysis Services)
MDX スクリプト ステートメント (MDX)
DROP SUBCUBE ステートメント (MDX)
SELECT ステートメント (MDX)