Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Podrobně se zaměřuje na členy množiny až o úroveň pod nejnižší úroveň zobrazenou v sadě.
Specifikace úrovně, na které se chcete hloubit, je volitelná, ale pokud ji nastavíte, můžete použít buď výraz úrovně, nebo indexovou úroveň. Tyto argumenty se vzájemně vylučují. Nakonec, pokud jsou v dotazu přítomni vypočítaní členové, můžete specifikovat argument, který je zahrne do řádkové sady.
Syntax
DrilldownLevel(Set_Expression [,[Level_Expression] ,[Index]] [,INCLUDE_CALC_MEMBERS])
Arguments
Nastavit_výraz
Platný výraz Multidimensional Expressions (MDX), který vrací množinu.
Level_Expression
(Volitelné). MDX výraz, který explicitně identifikuje úroveň, na které se má hlouběji prohloubit. Pokud specifikujete úrovňový výraz, přeskočte index argument níže.
Index
(Volitelné). Platný číselný výraz, který určuje hierarchické číslo, do kterého se má v rámci množiny podrobně prozkoumat. Můžete místo Level_Expression použít indexovou úroveň, abyste explicitně určili, na kterou úroveň se chcete ponořit.
Include_Calc_Members
(Volitelné). Vlajka označující, zda zahrnout vypočítané členy, pokud existují, na úrovni drill down.
Remarks
Funkce DrilldownLevel vrací sadu podčlenů v hierarchickém pořadí, založenou na členech zahrnutých ve specifikované sadě. Pořadí je zachováno mezi původními členy ve specifikované sadě, kromě toho, že všichni podčlenění zahrnutí ve výsledné množině funkce jsou zahrnuti bezprostředně pod svým nadřazeným členem.
Při víceúrovňové hierarchické datové struktuře si můžete explicitně vybrat úroveň, na které se chcete hlouběji ponořit. Existují dva vzájemně se vylučující způsoby, jak určovat úroveň. Prvním přístupem je nastavit argument level_expression pomocí MDX výrazu, který vrací úroveň. Alternativní přístup je zadat index argument , pomocí číselného výrazu, který určuje úroveň podle čísla.
Pokud je specifikován výraz úrovně, funkce sestaví množinu v hierarchickém pořadí tím, že získá děti pouze těch členů, kteří jsou na této úrovni. Pokud je specifikován výraz úrovně a na této úrovni není žádný člen, výraz úrovně se ignoruje.
Pokud je zadána hodnota indexu, funkce sestaví množinu v hierarchickém pořadí tak, že získá děti pouze těch členů, kteří jsou na nejnižší úrovni hierarchie odkazované ve specifikované množině, přičemž je dán nulový index.
Pokud není specifikován ani úrovňový výraz, ani indexová hodnota, funkce sestaví množinu v hierarchickém pořadí získáním pouze potomků těch členů, kteří jsou na nejnižší úrovni první dimenze odkazované v dané množině.
Dotazování vlastnosti XMLA MdpropMdxDrillFunctions vám umožní ověřit úroveň podpory, kterou server poskytuje pro vrtací funkce; podrobnosti viz Podporované vlastnosti XMLA (XMLA).
Examples
Následující příklady můžete vyzkoušet v oknu dotazů MDX v SSMS pomocí Adventure Works cube.
Příklad 1 – demonstruje minimální syntaxi
První příklad ukazuje minimální syntaxi pro DrilldownLevel. Jediným požadovaným argumentem je množinový výraz. Všimněte si, že když spustíte tento dotaz, dostanete rodiče [Všechny kategorie] a členy další úrovně níže: [Příslušenství], [Kola] a tak dále. Ačkoliv je tento příklad jednoduchý, ukazuje základní účel funkce DrilldownLevel , která spočívá v prohloubení na další úroveň níže.
SELECT DRILLDOWNLEVEL({[Product].[Product Categories]} * {[Sales Territory].[Sales Territory]}}) ON COLUMNS
FROM [Adventure Works]
Příklad 2 – alternativní syntaxe s použitím explicitní úrovně indexu
Tento příklad ukazuje alternativní syntaxi, kde je úroveň indexu určena číselným výrazem. V tomto případě je indexová úroveň 0. Pro nulový index je to ta nejnižší úroveň.
SELECT
DRILLDOWNLEVEL({[Product].[Product Categories]} * {[Sales Territory].[Sales Territory]},,0) ON COLUMNS
FROM [Adventure Works]
Všimněte si, že výsledná množina je totožná s předchozím dotazem. Obecně platí, že nastavování úrovně indexu není potřeba, pokud nechcete, aby drill down začínal na konkrétní úrovni. Znovu spusťte předchozí dotaz, nastavte hodnotu indexu na 1 a poté na 2. Když je index nastaven na 1, vidíte, že drill down začíná na druhé úrovni hierarchie. Při nastavené hodnotě indexu 2 začíná drill down na třetí úrovni, nejvyšší úrovni v tomto příkladu. Čím vyšší číselný výraz, tím vyšší je úroveň indexu.
Příklad 3 – demonstruje výraz úrovně
Další příklad ukazuje, jak použít výraz úrovně. Pokud máte množinu reprezentující hierarchickou strukturu, použití výrazu úrovně vám umožní vybrat úroveň v hierarchii, abyste mohli začít s podrobnějším průzkumem.
V tomto příkladu začíná úroveň drill down na [City], jako druhý argument funkce DrilldownLevel . Když spustíte tento dotaz, začíná na úrovni [Město], pro státy Washington a Oregon. Podle funkce DrilldownLevel obsahuje výsledná sada také členy na další úrovni, [PSČ].
SELECT [Measures].[Internet Sales Amount] ON COLUMNS,
NON EMPTY (
DRILLDOWNLEVEL(
{[Customer].[Customer Geography].[Country].[United States],
DESCENDANTS(
{ [Customer].[Customer Geography].[State-Province].[Washington],
[Customer].[Customer Geography].[State-Province].[Oregon]},
[Customer].[Customer Geography].[City]) } ,
[Customer].[Customer Geography].[City] ) ) ON ROWS
FROM [Adventure Works]
Příklad 4 – včetně vypočítaných členů
Poslední příklad ukazuje vypočítaný prvek, který se objeví na spodní části sady výsledků při přidání include_calculated_members příznaku. Všimněte si, že příznak je specifikován jako čtvrtý parametr.
Tento příklad funguje, protože vypočtený člen je na stejné úrovni jako nevypočítané členy. Vypočítaný člen [West Coast] se skládá z členů z [USA] plus všech členů o úroveň níže než [USA].
WITH MEMBER
[Customer].[Customer Geography].[Country].&[United States].[West Coast] AS
[Customer].[Customer Geography].[State-Province].&[OR]&[US] +
[Customer].[Customer Geography].[State-Province].&[WA]&[US] +
[Customer].[Customer Geography].[State-Province].&[CA]&[US]
SELECT [Measures].[Internet Order Count] ON 0,
DRILLDOWNLEVEL([Customer].[Customer Geography].[Country].&[United States],,,INCLUDE_CALC_MEMBERS) on 1
FROM [Adventure Works]
Pokud odstraníte pouze příznak a znovu spustíte dotaz, dostanete stejné výsledky, ale bez vypočteného člena [West Coast].