SQL SERVER2000教程-第五章 处理数据 第七节 使用COMPUTE和COMPUTE BY对数据进行汇总
2007-10-01 13:38
946 查看
![](http://img1.51cto.com/attachment/200904/200904221240401363259.jpg)
COMPUTE子句使用聚合函数生成数据的汇总值。COMPUTE和COMPUTE BY子句之间的区别在于COMPUTE不仅显示汇总的信息,还显示详细信息。生成的汇总值显示为另一行。这样在同一结果集就可以同时看到详细信息行与汇总行。COMPUTE支持使用聚合函数AVG、COUNT、MIN、MAX和SUM。
语法:Select 列名1,列名2……列名n from 表名
order by列名1
compute [by] 函数名(列名2)
实例:
a、 Use pubs
select type,price from titles
order by type
compute avg(price)
b、select type,advance from titles where type='business' or type='trad_cook'
order by type
compute sum(advance) by type
注意:
a)不允许DISTINCT关键字与行聚合函数一起使用。
b)COMPUTE子句中使用的列名必须出现在语句的选择列表中。
c)同一个语句中不能同时出现SELECT INTO和COMPUTE子句,这是因为包含COMPUTE的语句是以另一
个结构生成行。
d)如果使用COMPUTE BY,就必须同时使用ORDER BY子句。列于COMPUTE BY后的列必须等同于
ORDER BY 后出现的列或是ORDER BY 后的子集。它们必须具有相同的从左到右的顺序,从同一
个表达式开始,并且不能跳过任何表达式。
![](http://img1.51cto.com/attachment/200904/200904221240401363259.jpg)
相关文章推荐
- SQL SERVER2000教程-第五章 处理数据 第七节 使用COMPUTE和COMPUTE BY对数据进行汇总
- SQL SERVER2000教程-第五章 处理数据 第十九节 使用DECLARE 语句进行数据统计
- SQL SERVER2000教程-第五章 处理数据 第二十节 使用GOTO进行循环求和
- SQL SERVER2000教程-第五章 处理数据 第二十一节 使用CASE语句、SUM函数、AVG函数进行综合数据统计
- SQL SERVER2000教程-第五章 处理数据 第十九节 使用DECLARE 语句进行数据统计
- SQL SERVER2000教程-第五章 处理数据 第十六节 使用CHARINDEX函数代替Like进行数据查询
- SQL SERVER2000教程-第五章 处理数据 第二十节 使用GOTO进行循环求和
- SQL SERVER2000教程-第五章 处理数据 第二十一节 使用CASE语句、SUM函数、AVG函数进行综合数据统计
- SQL SERVER2000教程-第五章 处理数据 第十七节 使用CASE函数格式进行条件查询
- SQL SERVER2000教程-第五章 处理数据 第十八节 用BEGIN…END语句进行数据统计
- SQL SERVER2000教程-第五章 处理数据 第十二节 使用 TOP 和 PERCENT 限制结果集
- SQL SERVER2000教程-第五章 处理数据 第十八节 用BEGIN…END语句进行数据统计
- SQL SERVER2000教程-第五章 处理数据 第二十四节 使用table数据类型变量获得临时表
- SQL SERVER2000教程-第五章 处理数据 第十五节 使用TRUNCATE TABLE快速删除表中的所有数据
- 使用COMPUTE和COMPUTE BY对数据进行汇总
- SQL SERVER2000教程-第五章 处理数据 第三节 运算符
- SQL SERVER2000教程-第五章 处理数据 第十一节 子查询
- SQL SERVER2000教程-第五章 处理数据 第九节 联接
- SQL SERVER2000教程-第五章 处理数据 第四节 其它选择
- SQL SERVER2000教程-第五章 处理数据 第二十二节 利用UNION对多条SQL查询语句合并生成表