Condividi tramite


Manipolazione dei dati MDX - Recuperare i dati di origine con DRILLTHROUGH

Si applica a: SQL Server Analysis Services Azure Analysis Services Fabric/Power BI Premium

Nel linguaggio MDX (Multidimensional Expressions) è disponibile l'istruzione DRILLTHROUGH, che consente di recuperare un set di righe dai dati di origine per una cella di un cubo.

Per eseguire un'istruzione DRILLTHROUGH su un cubo, è necessario definire un'azione drill-through per tale cubo. Per definire un'azione drill-through, in SQL Server Data Tools, in Cube Designer, nel riquadro Azioni fare clic su Nuova azione drill-through sulla barra degli strumenti. Nella nuova azione drill-through specificare il nome, la destinazione e la condizione dell'azione, nonché le colonne restituite dall'istruzione DRILLTHROUGH .

Sintassi dell'istruzione DRILLTHROUGH

La sintassi dell'istruzione DRILLTHROUGH è la seguente:

<drillthrough> ::= DRILLTHROUGH [<Max_Rows>] [<First_Rowset>] <MDX select> [<Return_Columns>]  
   < Max_Rows> ::= MAXROWS <positive number>  
   <First_Rowset> ::= FIRSTROWSET <positive number>  
   <Return_Columns> ::= RETURN <member or attribute> [, <member or attribute>]  

La clausola SELECT identifica la cella del cubo che contiene i dati di origine da recuperare. Questa clausola SELECT è identica a una normale istruzione SELECT MDX, con la differenza che in questo caso nella clausola SELECT è possibile specificare solo un membro per ogni asse. Se su un asse sono specificati più membri, verrà generato un errore.

La sintassi <Max_Rows> specifica il numero massimo di righe in ogni set di righe restituito. Se il provider OLE DB uso per connettersi all'origine dati non supporta DBPROP_MAXROWS, l'impostazione <Max_Rows> verrà ignorata.

La sintassi <First_Rowset> identifica la partizione il cui set di righe viene restituito per primo.

La sintassi <Return_Columns> identifica le colonne del database sottostante da restituire.

Esempio di istruzione DRILLTHROUGH

Nell'esempio seguente viene illustrato l'uso dell'istruzione DRILLTHROUGH . In questo esempio l'istruzione DRILLTHROUGH esegue una query sugli elementi foglia delle dimensioni Store, Product e Time, lungo la dimensione Stores (l'asse di sezionamento), e quindi restituisce il gruppo di misure del reparto, l'ID del reparto e il nome del dipendente.

DRILLTHROUGH  
Select {Leaves(Store), Leaves(Product), Leaves(Time),*} on 0  
From Stores  
RETURN [Department MeasureGroup].[Department Id], [Employee].[First Name]  

Vedere anche

Manipolazione dei dati (MDX)