在查询中建立多维数据集上下文 (MDX)
适用于: SQL Server Analysis Services Azure Analysis Services Fabric/Power BI Premium
每个 MDX 查询都是在指定的多维数据集上下文中运行的。 此上下文定义了查询中的表达式求值的成员。
在 SELECT 语句中,FROM 子句用于确定多维数据集上下文。 此上下文可以是整个多维数据集,也可以只是该多维数据集的一个子多维数据集。 如果通过 FROM 子句指定了多维数据集上下文,就可以使用其他函数来扩展或限制该上下文。
注意
也可以使用 SCOPE 和 CALCULATE 语句在 MDX 脚本中管理多维数据集上下文。 有关详细信息,请参阅 mdX Scripting Fundamentals (Analysis Services) 。
FROM 子句的语法
以下语法说明了 FROM 子句:
<SELECT subcube clause> ::=
Cube_Identifier |
(SELECT [
* |
( <SELECT query axis clause> [ , <SELECT query axis clause> ... ] ) ]
FROM <SELECT subcube clause> <SELECT slicer axis clause> )
请注意,在此语法中, <SELECT subcube clause>
子句说明了执行 SELECT 语句时所在的多维数据集或子多维数据集。
FROM 子句的一个简单例子为针对整个 Adventure Works 示例多维数据集执行的子句。 这样的 FROM 子句将具有以下格式:
FROM [Adventure Works]
有关 MDX SELECT 语句中的 FROM 子句的详细信息,请参阅 SELECT 语句 (MDX) 。
完善上下文
虽然 FROM 子句指定的多维数据集上下文在单个多维数据集中,但这并不会造成您无法一次处理多个多维数据集中的数据。
您可以使用 MDX LookupCube 函数从多维数据集上下文以外的多维数据集中检索数据。 另外,可以使用诸如 Filter 之类的函数在对查询求值时对上下文进行临时限制。