博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
SQLServer之Compute/ComputeBy实现数据汇总
阅读量:6974 次
发布时间:2019-06-27

本文共 942 字,大约阅读时间需要 3 分钟。

创建一个表Material用于测试

CREATE TABLE material(

pid INT PRIMARY KEY IDENTITY(1,1),
name VARCHAR(100),
color VARCHAR(50),
num INT
);

插入些许测试值:

INSERT INTO material(name,color,num)

SELECT 'ball','red',12
UNION ALL
SELECT 'ball','red',24
UNION ALL
SELECT 'cat','yellow',13
UNION ALL
SELECT 'ball','yellow',13
UNION ALL
SELECT 'dog','yellow',13
UNION ALL
SELECT 'cat','black',4
UNION ALL
SELECT 'cat','white',5

(1)Compute

SELECT NAME,color,num
FROM material
ORDER BY NAME,color
COMPUTE SUM(num),MAX(num)

结果:

(2)Compute By

SELECT NAME,color,num

FROM material
ORDER BY NAME,color
COMPUTE SUM(num),MAX(num) BY NAME,color

结果:

总结:

GROUP BY 生成单个结果集。每个组都有一个只包含分组依据列和显示该组子聚合的聚合函数的行。选择列表只能包含分组依据列和聚合函数。

COMPUTE 生成多个结果集。一类结果集包含每个组的明细行,其中包含选择列表中的表达式。另一类结果集包含组的子聚合,或 SELECT 语句的总聚合。选择列表可包含除分组依据列或聚合函数之外的其它表达式。聚合函数在 COMPUTE 子句中指定,而不是在选择列表中。

说明 在 COMPUTE 或 COMPUTE BY 子句中,不能包含 ntext、text 或 image 数据类型。

转载于:https://www.cnblogs.com/secbook/archive/2012/07/18/2654867.html

你可能感兴趣的文章
SiteMesh介绍
查看>>
form实现登陆操作
查看>>
SpriteBuilder中如何平均拉伸精灵帧动画的距离
查看>>
poj1330Nearest Common Ancestors 1470 Closest Common Ancestors(LCA算法)
查看>>
dojo从asp.net中获取json数据
查看>>
Android:problem opening wizard the selected wizard could not be started
查看>>
PostgreSQL md5 auth method introduce, with random salt protect
查看>>
【spring框架】spring整合hibernate初步
查看>>
JVM调优总结
查看>>
PostgreSQL 9.3 beta2 stream replication primary standby switchover bug?
查看>>
创业思维 - Qunar的故事
查看>>
STM32中GPIO的8种工作模式
查看>>
一分钟了解阿里云产品:先知计划
查看>>
Centos 7环境下源码安装PostgreSQL数据库
查看>>
推荐一款 Flutter Push 推送功能插件
查看>>
数据结构(队列实现篇)
查看>>
iframe 数据传递
查看>>
ionic app 开发和生产环境的配置
查看>>
javascript数据结构与算法-队列
查看>>
如何定时备份数据库并上传七牛云
查看>>