使用 DRILLTHROUGH 检索源数据 (MDX)
多维表达式 (MDX) 使用 DRILLTHROUGH语句从多维数据集单元的源数据中检索行集。
为了对多维数据集运行 DRILLTHROUGH
语句,必须为该多维数据集定义钻取操作。 若要定义钻取操作,请在 SQL Server Data Tools (SSDT) 的多维数据集Designer中,在“操作”窗格的工具栏上,单击“新建钻取操作”。 在新的钻取操作中,指定 DRILLTHROUGH
语句返回的操作名称、目标、条件以及列。
DRILLTHROUGH 语句的语法
DRILLTHROUGH
语句使用以下语法:
<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>]
SELECT
子句标识包含要检索的源数据的多维数据集单元。 此 SELECT
子句与普通 MDX SELECT
语句基本相同,不同之处在于在 SELECT
子句中,只能在每个轴上指定一个成员。 如果在一个轴上指定了多个成员,则会发生错误。
<Max_Rows>
语法指定返回的每个行集中的最大行数。 如果用于连接数据源的 OLE DB 访问接口不支持 DBPROP_MAXROWS
,<Max_Rows>
设置将被忽略。
<First_Rowset>
语法标识最先返回其行集的分区。
<Return_Columns>
语法标识要返回的基础数据库列。
DRILLTHROUGH 语句的示例
下面的示例说明了 DRILLTHROUGH
语句的使用。 在此示例中,DRILLTHROUGH 语句沿着 Stores 维度(切片器轴)查询 Store 维度、Product 维度和 Time 维度的叶,然后返回部门度量值组、部门 ID 和员工的名字。
DRILLTHROUGH
Select {Leaves(Store), Leaves(Product), Leaves(Time),*} on 0
From Stores
RETURN [Department MeasureGroup].[Department Id], [Employee].[First Name]