14.SQL语句[6] 聚合、分组

--======================聚合函数============================
--求和sum    求平均avg   求个数count   最大值max    最小值min
select
    sum(金额) as 总金额,
    avg(金额) as 平均金额,
    max(金额) as 最大金额,
    min(金额) as 最小金额,
    COUNT(*) as 订单数
from 数据

--为什么运行时报错?
select 商品,SUM(金额) as 总金额 from 数据

--聚合之后的1个结果,无法与多行数据对应,所以报错
--结论1:select使用了聚合函数之后,后面不能直接跟其他字段
select SUM(金额) as 总金额 from 数据
select 商品 from 数据

--======================分组统计============================
--统计一下,每个商品的总销售额,按商品类分组统计
--使用了SUM(金额)之后,它就不是表示所有商品的金额总和,而是表示每一个组
--内部的总和
--结论2:select后面如果有聚合,那么如果要跟其他字段,那么“其他字段”
--要么分组、要么聚合。
select
    商品,
    SUM(金额) as 总金额,
    AVG(金额) as 平均金额,
    MAX(金额) as 最大金额,
    MIN(金额) as 最小金额
from 数据 group by 商品-----分组统计中   先执行分组   再执行聚合

--======================分组筛选============================
--统计一下每个部门金额达到100的订单的销售总额
select 销售部门,SUM(金额) as 总销售额 from 数据 group by 销售部门
select 销售部门,SUM(金额) as 总销售额 from 数据 where 金额>=100 group by 销售部门
--where 金额>=100  这个筛选是分组之前对数据源的筛选。

--统计一下销售总额超过8000的部门信息
select 销售部门,SUM(金额) as 总销售额 from 数据
    group by 销售部门 having SUM(金额)>=8000
--having SUM(金额)>=8000  这个筛选是在分组之后的基础上做的筛选
时间: 2024-10-08 17:25:37

14.SQL语句[6] 聚合、分组的相关文章

SQL语句汇总(三)——聚合函数、分组、子查询及组合查询 - Darly

–COUNT:统计行数量 –SUM:获取单个列的合计值 –AVG:计算某个列的平均值 –MAX:计算列的最大值 –MIN:计算列的最小值 首先,创建数据表如下: 执行列.行计数(count): 标准格式 SELECT COUNT(<计数规范>) FROM <表名> 其中,计数规范包括: - * :计数所有选择的行,包括NULL值: - ALL 列名:计数指定列的所有非空值行,如果不写,默认为ALL: - DISTINCT 列名:计数指定列的唯一非空值行. 例,计算班里共有多少学生:

SQL Server之 (二) SQL语句 模糊查询 空值处理 聚合函数

(二) SQL语句  模糊查询  空值处理  聚合函数 自己学习笔记,转载请注明出处,谢谢!---酸菜 SQL :结构化查询语言(Structured Query Language),关系数据库管理系统的标准语言. Sybase与Mircosoft对标准SQL做了扩展:T-SQL (Transact-SQL); 注:①SQL对大小写的敏感取决于排序规则,一般不敏感; ②SQL对单引号的转义,用两个单引号来表示一个单引号; ③SQL执行顺序: 1→2→3→4 select  * ---------

利用SQL语句产生分组序号

partition  by关键字是分析性函数的一部分,它和聚合函数不同的地方在于它能返回一个分组中的多条记录,而聚合函数一般只有一条反映统计值的记录,partition  by用于给结果集分组,如果没有指定那么它把整个结果集作为一个分组 那么我们怎么进行分组排序呢,见SQL语句如下:

Excel 中使用SQL 语句查询数据(八)-----用Group by 进行分组统计

今天要和大家分享用在sql 语句中使用group by来进行分组统计.大家首先来看一下数据源. 用OLE DB 打开数据源,(步骤请参考本系列第一篇博文) 最后一条语句group by Item ,就是以Item 列分组. 结果如下 按照item 分类汇总

SQL语句--分组的Top查询

代码 SELECT A.* FROM ( SELECT ROW_NUMBER() OVER(PARTITION BY Host ORDER BY Host,count(EntranceURL) DESC) AS ROW, Host, EntranceURL as PageURL ,count(EntranceURL) as EnterTimes ,sum(CASE WHEN IsBounce=1 THEN 1 ELSE 0 END ) AS BounceTimes FROM UserLoyalt

1-4 初识sql语句

初识sql语句 有了mysql这个数据库软件,就可以将程序员从对数据的管理中解脱出来,专注于对程序逻辑的编写 mysql服务端软件即mysqld帮我们管理好文件夹以及文件,前提是作为使用者的我们,需要下载mysql的客户端,或者其他模块来连接到mysqld,然后使用mysql软件规定的语法格式去提交自己命令,实现对文件夹或文件的管理.该语法即sql(Structured Query Language 即结构化查询语言) SQL语言主要用于存取数据.查询数据.更新数据和管理关系数据库系统,SQL语

SQl语句收藏

/* 启动MySQL */ net start mysql /* 连接与断开服务器 */ mysql -h 地址 -P 端口 -u 用户名 -p 密码 /* 跳过权限验证登录MySQL */ mysqld --skip-grant-tables -- 修改root密码 密码加密函数password() update mysql.user set password=password('root'); SHOW PROCESSLIST -- 显示哪些线程正在运行 SHOW VARIABLES --

mysql之sql语句

SQL语句中的注释:-- 单行注释/* .... */ 多行注释每个sql语句结束需要写;来结束需要在某个库中添加表需要use这个库 SQL DML 和DDLDML 数据操作语言DDL 数据定义语言DML : 对数据库表的操作CREATE TABLE 创建新表 1 -- 创建一个员工表employee 2 3 create table employee( 4 id int primary key auto_increment , 5 name varchar(20), 6 gender bit

转:sql语句优化

性能不理想的系统中除了一部分是因为应用程序的负载确实超过了服务器的实际处理能力外,更多的是因为系统存在大量的SQL语句需要优化. 为了获得稳定的执行性能,SQL语句越简单越好.对复杂的SQL语句,要设法对之进行简化. 常见的简化规则如下: 1)不要有超过5个以上的表连接(JOIN)2)考虑使用临时表或表变量存放中间结果.3)少用子查询4)视图嵌套不要过深,一般视图嵌套不要超过2个为宜. 连接的表越多,其编译的时间和连接的开销也越大,性能越不好控制. 最好是把连接拆开成较小的几个部分逐个顺序执行.