数据库表:
create table pay_report(
    rdate varchar(8),     --日期
    region_id varchar(4),    --地市  
    alipay_pay varchar(12), --支付宝支付
    wechat_pay varchar(12), --微信支付
    phonepay varchar(12)    --电话支付
);
 
数据表的含义:一个江苏省全省连锁的商铺,每一天总公司都会收到各地市中,电话支付,微信支付,支付宝支付的钱
 
插入数据:
insert into pay_report values('20170901','0531','120000','2232100','2000');
insert into pay_report values('20170901','0532','890000','100200','800');
insert into pay_report values('20170901','0533','230001','210000','0');
insert into pay_report values('20170902','0531','249500','2234400','100');
insert into pay_report values('20170902','0532','289000','1234000','1800');
insert into pay_report values('20170902','0533','180000','1532100','1400');
insert into pay_report values('20170903','0531','168000','2442100','100');
...
...
 
 
 
 
1.avg(),max(),min(),sum()函数可以单独,不与group by一起使用
select sum(alipay_pay),sum(wechat_pay),max(phonepay)from pay_report;
 
 
原因是:avg(),max(),min(),sum() 是对某一分组的操作,这些函数不与其他字段一起查询,他们查询内容是列这一大分组的操作,查询的数据只有一条
 
 
 
 
2.avg(),max(),min(),sum()函数与某一字段一起不使用group by一起查询时,就会报错
 
select rdate,sum(alipay_pay),sum(wechat_pay),max(phonepay)from pay_report;
 
原因是:avg(),max(),min(),sum()是对一分组的操作,而rdate字段是对单一一条的操作,所以在一起查询会报错,所以必须使用group by
 
 
 
 
3,avg(),max(),min(),sum()函数与某一字段一起使用group by一起查询时
 
select rdate,sum(alipay_pay),sum(wechat_pay),max(phonepay)from pay_report group by rdate;
 
原因:rdate将数据按rdate分组,avg(),max(),min(),sum()再对这每一个小分组的数据进行操作,
    所以但查询的字段是什么,就必须在后面group by这些字段
    eg: select A,B,C from test group by A;错误
       select A,B,C from test group by A,B,C;正确
 
 
 
 
4,查询的字段不使用函数,但使用group by
 
1).select rdate from pay_report group by rdate;
 
其实显示的是rdate每一个唯一的值,其实与select distinct rdate from pay_report;语句相同
 
 
2).select rdate,region_id from pay_report group by rdate,region_id;
 
其实筛选出来的是在rdate中的每一个不同的region_id值

--------------------- 本文来自 兮川 的CSDN 博客 ,全文地址请点击:https://blog.csdn.net/zc_ad/article/details/78121397?utm_source=copy

group by与avg(),max(),min(),sum()函数的关系的更多相关文章

  1. SQL--合计函数(Aggregate functions):avg,count,first,last,max,min,sum

    SQL--合计函数(Aggregate functions):avg,count,first,last,max,min,sum avg() 函数 定义和用法 AVG 函数返回数值列的平均值.NULL ...

  2. 49-python基础-python3-列表-常用列表统计函数-max()-min()-sum()

    max() min() sum() 1-数字列表统计 实例: 2-字符串列表统计. 根据ASCII码大小统计字符串列表的min()和max(). 注意:sum()函数无法统计字符串列表. 实例:

  3. SQL模糊查询,sum,AVG,MAX,min函数

    cmd mysql -hlocalhost -uroot -p select * from emp where ename like '___' -- 三个横线, - 代表字符,可以查询 三个enam ...

  4. 聚合函数:sum,avg,max,min,count

    group by  分组的使用方法 数学函数:ABS.ceiling.floor.power.round.sqrt.square 练习:

  5. MySQL之聚合数据(AVG,COUNT,MAX,MIN,SUM)

    1.首先我们需要了解下什么是聚合函数 聚合函数aggregation function又称为组函数. 认情况下 聚合函数会对当前所在表当做一个组进行统计. 2.聚合函数的特点 1.每个组函数接收一个参 ...

  6. mysql之count,max,min,sum,avg,celing,floor

    写在前面 昨天去青龙峡玩了一天,累的跟狗似的.不过还好,最终也算登到山顶了,也算来北京后征服的第三座山了.这里也唠叨一句,做开发这行,没事还是多运动运动,对自己还是很有好处的,废话少说,还是折腾折腾s ...

  7. MySQL之汇总数据(AVG,COUNT,MAX,MIN,SUM)

    table test Field Type Null Key Default Extra id int(11) NO PRI NULL auto_increment name char(50) NO ...

  8. SQL-基础学习4--聚集函数:AVG(),COUNT(),MAX(),MIN(),SUM();聚集不同值:DISTINCT

    第九课 9.1 聚集函数(对某些行运行的函数,计算并返回一个值) 我们经常需要汇总数据而不用把它们实际检索出来,为此SQL提供了专门的函数.使用这些函数,SQL查询可用于检索数据,以便分析和报表生成. ...

  9. Linq查询操作之聚合操作(count,max,min,sum,average,aggregate,longcount)

    在Linq中有一些这样的操作,根据集合计算某一单一值,比如集合的最大值,最小值,平均值等等.Linq中包含7种操作,这7种操作被称作聚合操作. 1.Count操作,计算序列中元素的个数,或者计算满足一 ...

随机推荐

  1. es6箭头函数内部判断

    ES6闭包内部判断 需要判断i值和数组长度的关系,一旦大于i归0 未加入判断 setInterval((i => (() =>( this.$refs.danmu.render(ret.d ...

  2. Codeforces Round #410 (Div. 2) B

    B. Mike and strings time limit per test 2 seconds memory limit per test 256 megabytes input standard ...

  3. 【Gym - 101164I】Cubes(dfs,剪枝)

    BUPT2017 wintertraining(15) #4 A - I.Cubes Gym - 101164I 题意 将n拆成最少个立方数相加的形式. 题解 根据n的范围,立方数最大不超过400的立 ...

  4. 【BZOJ4815】[CQOI2017]小Q的表格(莫比乌斯反演,分块)

    [BZOJ4815][CQOI2017]小Q的表格(莫比乌斯反演,分块) 题面 BZOJ 洛谷 题解 神仙题啊. 首先\(f(a,b)=f(b,a)\)告诉我们矩阵只要算一半就好了. 接下来是\(b* ...

  5. LoadRunner回放乱码

    乱码的原因和服务器字符集编码相关,默认LR是gbk解码,如果服务器是utf8,那么需要改为utf8解码,这样中文就显示正常了. 通过查看源码,可以知道服务器的编码方式:<meta charset ...

  6. 【更新】搭建 Zookeeper-3.4.11 集群

    先准备好三台linux(虚拟机). 1. 先把Java环境配好.我CentOS-7-x86_64-DVD-1708 + jdk1.8.0_161 1.1 先把jdk上传到系统里面(我利用的Filezi ...

  7. Codeforces Round #525 (Div. 2) Solution

    A. Ehab and another construction problem Water. #include <bits/stdc++.h> using namespace std; ...

  8. C# BindingSource

    1.引言 BindingSource组件是数据源和控件间的一座桥,同时提供了大量的API和Event供我们使用.使用这些API我们可以将Code与各种具体类型数据源进行解耦:使用这些Event我们可以 ...

  9. java基础-Idea开发工具介绍

    java基础-Idea开发工具介绍 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 之前给大家介绍过一款Java的IDE叫eclipse,有些功能用起来不是很得心应手,尤其是在导报的 ...

  10. python---redis的python使用

    set以及相关: r.set("foo","bar") print(r.get("foo"))#b'bar' #在Redis中设置值,默认, ...