Aracılığıyla paylaş


Query kapsamlı oluşturma, Ayarlar (MDX) adlı

Yalnızca, adlandırılmış kümesi ise, çok boyutlu deyimler (MDX) sorgusu tek gereken, küme WITH anahtar sözcüğünü kullanarak adlı tanımlayabilirsiniz.Sorgunun çalışması bittikten sonra artık WITH anahtar kullanılarak oluşturulan BIR adlandırılmış küme.

Bu konuda anlatıldığı gibi sözdizimi ILE anahtar bile kullanma işlevlerini, belirtilen tanımlamak için kullanılan oldukça esnek küme.

Not

Adlandırılmış kümeleri hakkında daha fazla bilgi için bkz: MDX (MDX), Ayarlar'ı Named oluşturma.

Anahtar sözcük sözdizimi

Bir MDX deyim ILE anahtar sözcük eklemek için aşağıdaki sözdizimini kullanın:

[ WITH <SELECT WITH clause> [ , <SELECT WITH clause> ... ] ] 
SELECT [ * | ( <SELECT query axis clause> [ , <SELECT query axis clause> ... ] ) ]
FROM <SELECT subcube clause> 
[ <SELECT slicer axis clause> ]
[ <SELECT cell property list clause> ]

<SELECT WITH clause> ::=
   ( SET Set_Identifier AS 'Set_Expression')

WITH anahtar sözcük için sözdiziminde Set_Identifier parametresi için belirtilen diğer ad içeriyor küme. The Set_Expression parameter contains the küme ifade to which the named küme diğer ad refers.

Anahtar sözcük örneği

Aşağıdaki MDX sorgusu çeşitli Chardonnay birim satışlarını inceler ve içinde Chablis wines FoodMart 2000, örnek veritabanı için SQL Server 2000 Analysis Services. Bu sorgu, ancak sonuç açısından oldukça basit küme, bakım için olduğunda, uzun ve kaba olan bir sorgu.

SELECT
   {[Product].[All Products].[Drink].[Alcoholic Beverages].[Beer and Wine].[Wine].[Good].[Good Chardonnay],   [Product].[All Products].[Drink].[Alcoholic Beverages].[Beer and Wine].[Wine].[Pearl].[Pearl Chardonnay],   [Product].[All Products].[Drink].[Alcoholic Beverages].[Beer and Wine].[Wine].[Portsmouth].[Portsmouth Chardonnay],   [Product].[All Products].[Drink].[Alcoholic Beverages].[Beer and Wine].[Wine].[Top Measure].[Top Measure Chardonnay],   [Product].[All Products].[Drink].[Alcoholic Beverages].[Beer and Wine].[Wine].[Walrus].[Walrus Chardonnay],   [Product].[All Products].[Drink].[Alcoholic Beverages].[Beer and Wine].[Wine].[Good].[Good Chablis Wine],   [Product].[All Products].[Drink].[Alcoholic Beverages].[Beer and Wine].[Wine].[Pearl].[Pearl Chablis Wine],   [Product].[All Products].[Drink].[Alcoholic Beverages].[Beer and Wine].[Wine].[Portsmouth].[Portsmouth Chablis Wine],   [Product].[All Products].[Drink].[Alcoholic Beverages].[Beer and Wine].[Wine].[Top Measure].[Top Measure Chablis Wine],   [Product].[All Products].[Drink].[Alcoholic Beverages].[Beer and Wine].[Wine].[Walrus].[Walrus Chablis Wine]} ON COLUMNS,
   {Measures.[Unit Sales]} ON ROWS
FROM Sales

Önceki MDX sorgusu bakımını daha kolay hale getirmek için , adlandırılmış bir oluşturabileceğiniz küme sorgu, WITH anahtar sözcüğünü kullanarak.Aşağıdaki kod ILE anahtar adlı küme oluşturmak için nasıl kullanılacağını gösterir. [ChardonnayChablis], ve nasıl adlandırılmış kümesi deyim daha kısa ve bakımını daha kolay hale getirir.

WITH SET [ChardonnayChablis] AS
   {[Product].[All Products].[Drink].[Alcoholic Beverages].[Beer and Wine].[Wine].[Good].[Good Chardonnay],
   [Product].[All Products].[Drink].[Alcoholic Beverages].[Beer and Wine].[Wine].[Pearl].[Pearl Chardonnay],
   [Product].[All Products].[Drink].[Alcoholic Beverages].[Beer and Wine].[Wine].[Portsmouth].[Portsmouth Chardonnay],
   [Product].[All Products].[Drink].[Alcoholic Beverages].[Beer and Wine].[Wine].[Top Measure].[Top Measure Chardonnay],
   [Product].[All Products].[Drink].[Alcoholic Beverages].[Beer and Wine].[Wine].[Walrus].[Walrus Chardonnay],
   [Product].[All Products].[Drink].[Alcoholic Beverages].[Beer and Wine].[Wine].[Good].[Good Chablis Wine],
   [Product].[All Products].[Drink].[Alcoholic Beverages].[Beer and Wine].[Wine].[Pearl].[Pearl Chablis Wine],
   [Product].[All Products].[Drink].[Alcoholic Beverages].[Beer and Wine].[Wine].[Portsmouth].[Portsmouth Chablis Wine],
   [Product].[All Products].[Drink].[Alcoholic Beverages].[Beer and Wine].[Wine].[Top Measure].[Top Measure Chablis Wine],
   [Product].[All Products].[Drink].[Alcoholic Beverages].[Beer and Wine].[Wine].[Walrus].[Walrus Chablis Wine]}

SELECT
   [ChardonnayChablis] ON COLUMNS,
   {Measures.[Unit Sales]} ON ROWS
FROM Sales

Işlevler, ILE birlikte kullanılarak anahtar sözcük

Ancak, her üyenin, adlandırılmış bir açık olarak tanımlayabilirsiniz küme, bu yaklaşım, uzun bir deyim oluşturabilir.Oluşturma ve bakımını bir adlandırılmış küme üyelerini tanımlamak için MDX işlevleri daha kolay kullanabilirsiniz.

Örneğin, aşağıdaki örnekte MDX sorgusu kullanan Süzgeç, CurrentMember, and Adı MDX işlevleri ve ınstr VBA işlev oluşturmak için[ChardonnayChablis] adlı küme. Bu sürümü, [ChardonnayChablis] adlı küme açıkça tanımlanan sürümü daha önce bu konuda görüldüğü aynıdır.

WITH SET [ChardonnayChablis] AS
   'Filter([Product].Members, (InStr(1, [Product].CurrentMember.Name, "chardonnay") <> 0) OR (InStr(1, [Product].CurrentMember.Name, "chablis") <> 0))'

SELECT
   [ChardonnayChablis] ON COLUMNS,
   {Measures.[Unit Sales]} ON ROWS
FROM Sales