COMPUTE和COMPUTE BY子句是什么意思,怎么用

来源:百度知道 编辑:UC知道 时间:2024/05/18 02:12:15

提供 COMPUTE 和 COMPUTE BY 是为了向后兼容。请改为使用下列组件:

Microsoft® SQL Server™ 2000 Analysis Services 和用于 Analysis Services 的 OLE DB
或 Microsoft ActiveX® 数据对象(多维)(ADO MD) 一起使用。有关更多信息,请参见 Microsoft SQL Server™ 2000
Analysis Services。

ROLLUP 运算符。有关更多信息,请参见用 ROLLUP 汇总数据。

COMPUTE BY 子句使您得以用同一 SELECT 语句既查看明细行,又查看汇总行。可以计算子组的汇总值,也可以计算整个结果集的汇总值。

COMPUTE 子句需要下列信息:

可选的 BY 关键字,该关键字可按对一列计算指定的行聚合。

行聚合函数名称;例如,SUM、AVG、MIN、MAX 或 COUNT。

要对其执行行聚合函数的列。

COMPUTE 生成的结果集

COMPUTE 所生成的汇总值在查询结果中显示为分离的结果集。包括 COMPUTE
子句的查询的结果类似于控制中断报表,即汇总值由指定的组(或称中断)控制的报表。可以为各组生成汇总值,也可以对同一组计算多个聚合函数。

当 COMPUTE 带有可选的 BY 子句时,符合 SELECT 条件的每个组都有两个结果集:

每个组的第一个结果集是明细行集,其中包含该组的选择列表信息。

每个组的第二个结果集有一行,其中包含该组的 COMPUTE 子句中所指定的聚合函数的小计。

当 COMPUTE 不带可选的 BY 子句时,SELECT 语句有两个结果集:

每个组的第一个结果集是包含选择列表信息的所有明细行。

第二个结果集有一行,其中包含 COMPUTE 子句中所指定的聚合函数的合计。