视觉总计是在列或行末尾对可见项进行汇总得到的总计。 这是显示时大多数表的默认行为。 但是,有时用户只想在表中显示某些列,但保留整个行的总计,包括未显示的列。 这些被称为Non Visual Totals,因为总数由可见值和不可见值共同组成。
以下场景演示了非视觉总计的行为。 第一步显示 Visual Totals 的默认行为。
下面的示例是 [Adventure Works] 的查询,用于获取表中的 [Reseller Sales Amount] 数字,其中产品类别是列,经销商业务类型是行。 请注意,在发出以下 SELECT 语句时,将会列出产品和经销商的总计:
select [Category].members on 0,
[Business Type].members on 1
from [Adventure Works]
where [Measures].[Reseller Sales Amount]
生成以下结果:
| 所有产品 | 配饰 | 自行车 | 服装 | 组件 | |
| 所有经销商 | $80,450,596.98 | $571,297.93 | $66,302,381.56 | $1,777,840.84 | $11,799,076.66 |
| 专业自行车店 | $6,756,166.18 | $65,125.48 | $6,080,117.73 | $252,933.91 | $357,989.07 |
| 增值转售商 | $34,967,517.33 | $175,002.81 | $30,892,354.33 | $592,385.71 | $3,307,774.48 |
| 仓库 | $38,726,913.48 | $331,169.64 | $29,329,909.50 | $932,521.23 | $8,133,313.11 |
行和列上的非可见对象
若要仅为配件和服装产品生成一个包含数据的表,并且只针对增值经销商和仓库经销商,同时保留总体总量,可以使用 NON VISUAL 编写如下:
select [Category].members on 0,
[Business Type].members on 1
from NON VISUAL (Select {[Category].Accessories, [Category].Clothing} on 0,
{[Business Type].[Value Added Reseller], [Business Type].[Warehouse]} on 1
from [Adventure Works])
where [Measures].[Reseller Sales Amount]
生成以下结果:
| 所有产品 | 配饰 | 服装 | |
| 所有经销商 | $80,450,596.98 | $571,297.93 | $1,777,840.84 |
| 增值经销商 | $34,967,517.33 | $175,002.81 | $592,385.71 |
| 仓库 | $38,726,913.48 | $331,169.64 | $932,521.23 |
行上的非视觉元素
若要生成一个表,该表直观地显示各列的汇总,但对于行的整体总计,显示所有 [Category] 的实际总和,应执行以下查询:
select [Category].members on 0,
[Business Type].members on 1
from NON VISUAL (Select {[Category].Accessories, [Category].Clothing} on 0
from ( Select {[Business Type].[Value Added Reseller], [Business Type].[Warehouse]} on 0
from [Adventure Works])
)
where [Measures].[Reseller Sales Amount]
请注意,“非可视”仅适用于 [Category]。
上述查询生成以下结果:
| 所有产品 | 配件 | 服装 | |
| 所有经销商 | $73,694,430.80 | $506,172.45 | $1,524,906.93 |
| 增值经销商 | $34,967,517.33 | $175,002.81 | $592,385.71 |
| 仓库 | $38,726,913.48 | $331,169.64 | $932,521.23 |
与以前的结果相比,可以观察到[所有经销商]行现在的总计值是显示的[增值经销商]和[仓库]的值之和,而[所有产品]列显示所有产品的总值,包括未显示的产品。
另请参阅
MDX中的关键概念(分析服务)
Autoexists
使用成员、元组和集(MDX)
MDX 查询基础 (分析服务)
基本 MDX 查询 (MDX)
利用查询轴和切片器轴限制查询(MDX)
在查询中建立 Cube 上下文(MDX)