使用单元属性 (MDX)
多维表达式 (MDX) 中的单元属性包含有关多维数据源(如多维数据集)中的单元的内容和格式的信息。
MDX 支持使用 MDX SELECT 语句中的 CELL PROPERTIES 关键字来检索内部单元属性。 内部单元属性通常用于协助单元数据的直观显示。
CELL PROPERTIES 关键字的语法
MDX SELECT 语句中的 CELL PROPERTIES 关键字使用下列语法:
SELECT [<axis_specification>
[, <axis_specification>...]]
FROM [<cube_specification>]
[WHERE [<slicer_specification>]]
[<cell_props>]
下列语法显示了 <cell_props> 值的格式,以及此值如何将 CELL PROPERTIES 关键字与一个或多个内部单元属性一起使用:
<cell_props> ::= CELL PROPERTIES <property> [, <property>...]
支持的内部单元属性
下表列出了 <property> 值中使用的、支持的内部单元属性。
属性 |
说明 |
---|---|
ACTION_TYPE |
指示单元中存在何种操作的位掩码。 此属性可以为下列值之一:
注意
对于在 where 子句中包含集的查询来说,不包含钻取操作。
|
BACK_COLOR |
用于显示 VALUE 或 FORMATTED_VALUE 属性的背景色。 有关详细信息,请参阅 FORE_COLOR 和 BACK_COLOR 内容 (MDX)。 |
CELL_ORDINAL |
数据集中单元的序号。 |
FONT_FLAGS |
字体的位掩码细节效果。 该值是对以下一个或多个常量执行按位 OR 操作的结果:
例如,值 5 表示粗体 (MDFF_BOLD) 和下划线 (MDFF_UNDERLINE) 字体效果的组合。 |
FONT_NAME |
用来显示 VALUE 或 FORMATTED_VALUE 属性的字体。 |
FONT_SIZE |
用来显示 VALUE 或 FORMATTED_VALUE 属性的字体大小。 |
FORE_COLOR |
用来显示 VALUE 或 FORMATTED_VALUE 属性的前景色。 有关详细信息,请参阅 FORE_COLOR 和 BACK_COLOR 内容 (MDX)。 |
FORMAT |
与 FORMAT_STRING 相同。 |
FORMAT_STRING |
用来创建 FORMATTED_VALUE 属性值的格式字符串。 有关详细信息,请参阅 FORMAT_STRING 内容 (MDX)。 |
FORMATTED_VALUE |
表示 VALUE 属性的格式化显示的字符串。 |
LANGUAGE |
应用 FORMAT_STRING 的区域设置。LANGUAGE 通常用于进行货币转换。 |
UPDATEABLE |
指示单元是否可更新的值。 此属性可以为下列值之一:
|
VALUE |
单元的未格式化值。 |
只有 CELL_ORDINAL、FORMATTED_VALUE 和 VALUE 单元属性是必需的。 所有的单元属性(内部单元属性或特定于提供程序的单元属性)都在 PROPERTIES 架构行集中进行定义,包括它们的数据类型和提供程序支持。 有关 PROPERTIES 架构行集的详细信息,请参阅 MDSCHEMA_PROPERTIES 行集。
默认情况下,如果未使用 CELL PROPERTIES 关键字,返回的单元属性为 VALUE、FORMATTED_VALUE 和 CELL_ORDINAL(按这里显示的顺序)。 如果使用了 CELL PROPERTIES 关键字,将只返回用该关键字显式声明的那些单元属性。
下面的示例显示了 CELL PROPERTIES 关键字在 MDX 查询中的使用:
SELECT
{[Measures].[Reseller Gross Profit]} ON COLUMNS,
{[Reseller].[Reseller Type].[Reseller Name].Members} ON ROWS
FROM [Adventure Works]
CELL PROPERTIES VALUE, FORMATTED_VALUE, FORMAT_STRING, FORE_COLOR, BACK_COLOR
对于返回简化格式的行集的 MDX 查询,不返回单元属性;这种情况下,每个单元表现为似乎只返回了 FORMATTED_VALUE 单元属性。
设置单元属性
在 MicrosoftSQL ServerAnalysis Services 中,可以通过多维数据集设计器或维度设计器中的**“计算”**选项卡设置单元属性。单元属性表现为字符串表达式,如下面的示例所示,该示例为指定的成员提供带红色前景的黄色背景。
FORE_COLOR='255',BACK_COLOR='65535'
单元属性通常回滚到父成员,除非父成员是具有单元属性的自定义成员。 在这种情况下,父单元属性将覆盖从其子级派生的单元属性。