前提:SQL函数的两个概念

聚敛函数:对多条记录进行操作的函数,如SUM、COUNT、MIN、MAX、AVG。

其他函数:对单条记录进行操作的函数,如ABS、CEIL、SQRT等。

举个例子:

SELECT ABS(xxx) FROM tbl;  -- 这里的ABS函数,就是对单条记录进行操作的函数。

SELECT COUNT(*) FROM tbl;  -- 这里的COUNT函数,就是对多条记录进行操作的函数。

再来看看 group by:

group by 后面跟随的只能是字段!顾名思义,是按照某个字段进行分组!!!分组之后呢?当然是要进行某些操作了。

顾名思义,group by 就是“按照组”来进行某些操作。

既然是分组后的操作,那必定是多条记录,所以只能使用聚敛函数(当然也可以什么函数都不用)。

想一下,按照组是按照什么组??? 这就是由 group by 后面跟随的字段来决定了。

举个例子,我们有一个表teacher,它有四个字段:id INT, name CHAR, gender CHAR, major INT 。

我们能怎么分组?当然只能在这些字段中分组了!

例如,按照性别gender来分组,或者按照专业major来分组。

>>>>>>>>>>>未完待续· 研究下MySQL是很有意思的事情

参考:

https://dev.mysql.com/doc/refman/5.7/en/group-by-functions.html

https://dev.mysql.com/doc/refman/5.7/en/group-by-modifiers.html

https://dev.mysql.com/doc/search/?d=12&p=1&q=group+by

http://uule.iteye.com/blog/1569262

group by 小结的更多相关文章

  1. ORA-10922 Temporary tablespace group is empty错误

    错误--练习查询,发现报错: SQL>  select * from range_list_part_tab where id=100000Execution Plan------------- ...

  2. MySQL的日志(二):事务日志

    本文目录:1.redo log 1.1 redo log和二进制日志的区别 1.2 redo log的基本概念 1.3 日志块(log block) 1.4 log group和redo log fi ...

  3. 详细分析MySQL事务日志(redo log和undo log)

    innodb事务日志包括redo log和undo log.redo log是重做日志,提供前滚操作,undo log是回滚日志,提供回滚操作. undo log不是redo log的逆向过程,其实它 ...

  4. 详细分析MySQL事务日志(redo log和undo log) 表明了为何mysql不会丢数据

    innodb事务日志包括redo log和undo log.redo log是重做日志,提供前滚操作,undo log是回滚日志,提供回滚操作. undo log不是redo log的逆向过程,其实它 ...

  5. Mysql 5.7 基于组复制(MySQL Group Replication) - 运维小结

    之前介绍了Mysq主从同步的异步复制(默认模式).半同步复制.基于GTID复制.基于组提交和并行复制 (解决同步延迟),下面简单说下Mysql基于组复制(MySQL Group Replication ...

  6. Group By 多个分组集小结 --GROUPING SETS,GROUP BY CUBE,GROUP BY ROLLUP,GROUPING(),GROUPING_ID()

    T-SQL 多个分组集共有三种 GROUPING SETS, CUBE, 以及ROLLUP, 其中 CUBE和ROLLUP可以当做是GROUPING SETS的简写版 示例数据库下载: http:// ...

  7. oracle sql小结(主要讲横列转换的例子)group by以及wmsys.wm_concat()的使用

    ---计算九月每个电厂的数量select f_dcname,count(f_dcname) as 九月份的数量 from W_EC_PLACESTATION_COLLECT twhere f_coll ...

  8. analyticdb(ADB) group by 用法小结

    虽说analyticdb(ADB)是支持mysql协议的,但有些具体细节用法是有些区别. 1.group by 字段 mysql group by select id,title,describe w ...

  9. Python自然语言处理工具小结

    Python自然语言处理工具小结 作者:白宁超 2016年11月21日21:45:26 目录 [Python NLP]干货!详述Python NLTK下如何使用stanford NLP工具包(1) [ ...

随机推荐

  1. haproxy-1.7.7 基于域名的调度配置

    配置样列: [root@c01 haproxy-1.7.7]# cat conf/haproxy.cfg global log 127.0.0.1 local0 info #[err warning ...

  2. Flink 中的kafka何时commit?

    https://ci.apache.org/projects/flink/flink-docs-release-1.6/internals/stream_checkpointing.html @Ove ...

  3. html5的拖拽dragAPI(如果看了API不懂,看看那三个案例就会恍然大悟)

    1.拖拽和释放定义: 拖拽:Drag; 释放:Drop; 2.源对象和目标对象: 3.相关API: ondragstart:源对象开始被拖动 ondrag:源对象被拖动的过程中 ondragend:源 ...

  4. Python爬取中国票房网所有电影片名和演员名字,爬取齐鲁网大陆所有电视剧名称

    爬取CBO中国票房网所有电影片名和演员名字 # -*- coding: utf-8 -*- # 爬取CBO中国票房网所有电影片名 import json import requests import ...

  5. Centos7.4使用SoftEther搭建V.PN

    参考: https://blog.csdn.net/qq_39591494/article/details/78625394?locationNum=9&fps=1 https://www.b ...

  6. 修改AIX Noncomp内存占用比

    解决AIX系统由于文件缓存在内存未释放引发的进程异常终止问题: topas: Noncomp占用过多内存 占用内存前十的进程: ps -ealf | head -1 ; ps -ealf | sort ...

  7. 从 shell 眼中看世界

    (字符) 展开每一次你输入一个命令,然后按下 enter 键,在 bash 执行你的命令之前, bash 会对输入的字符完成几个步骤处理.我们已经知道两三个案例,怎样一个简单的字符序列,例如 “*”, ...

  8. java基础篇---异常处理

    认识异常 异常时导致程序中断运行的一种指令流,如果不对异常进行正确的处理,则可能导致程序的中断执行,造成不必要的损失,所以在程序的设计中必须考虑各种异常的发生,并正确的做好相应的处理,这样才能保证程序 ...

  9. linux 删除文件,df空间不变化

    今天遇到一个问题,就是linux服务器空间满了,可是删除了软件后. 查看空间,没有变化 ???啥情况 那么去查看删除的情况吧. [root@VM_0_4_centos usr]# lsof|grep ...

  10. AZURE云上 mkfs.ext4 /dev/sdc 导致宕机问题解决纪实

    )开机启动挂载配置 [root@pldb2 ~]# vim /etc/fstab You have new mail in /var/spool/mail/root [root@pldb2 ~]# m ...