group by 小结
前提: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 小结的更多相关文章
- ORA-10922 Temporary tablespace group is empty错误
错误--练习查询,发现报错: SQL> select * from range_list_part_tab where id=100000Execution Plan------------- ...
- MySQL的日志(二):事务日志
本文目录:1.redo log 1.1 redo log和二进制日志的区别 1.2 redo log的基本概念 1.3 日志块(log block) 1.4 log group和redo log fi ...
- 详细分析MySQL事务日志(redo log和undo log)
innodb事务日志包括redo log和undo log.redo log是重做日志,提供前滚操作,undo log是回滚日志,提供回滚操作. undo log不是redo log的逆向过程,其实它 ...
- 详细分析MySQL事务日志(redo log和undo log) 表明了为何mysql不会丢数据
innodb事务日志包括redo log和undo log.redo log是重做日志,提供前滚操作,undo log是回滚日志,提供回滚操作. undo log不是redo log的逆向过程,其实它 ...
- Mysql 5.7 基于组复制(MySQL Group Replication) - 运维小结
之前介绍了Mysq主从同步的异步复制(默认模式).半同步复制.基于GTID复制.基于组提交和并行复制 (解决同步延迟),下面简单说下Mysql基于组复制(MySQL Group Replication ...
- Group By 多个分组集小结 --GROUPING SETS,GROUP BY CUBE,GROUP BY ROLLUP,GROUPING(),GROUPING_ID()
T-SQL 多个分组集共有三种 GROUPING SETS, CUBE, 以及ROLLUP, 其中 CUBE和ROLLUP可以当做是GROUPING SETS的简写版 示例数据库下载: http:// ...
- oracle sql小结(主要讲横列转换的例子)group by以及wmsys.wm_concat()的使用
---计算九月每个电厂的数量select f_dcname,count(f_dcname) as 九月份的数量 from W_EC_PLACESTATION_COLLECT twhere f_coll ...
- analyticdb(ADB) group by 用法小结
虽说analyticdb(ADB)是支持mysql协议的,但有些具体细节用法是有些区别. 1.group by 字段 mysql group by select id,title,describe w ...
- Python自然语言处理工具小结
Python自然语言处理工具小结 作者:白宁超 2016年11月21日21:45:26 目录 [Python NLP]干货!详述Python NLTK下如何使用stanford NLP工具包(1) [ ...
随机推荐
- markModified声明要修改的数组字段
更新一个文档的字段的时候,如果该字段的类型是数组类型,则必须在更新保存前声明一下这个数组字段要被修改,否则这个数组字段的值不会被修改.如 article.markModified('categorys ...
- 数据库的ACID
一.事务 定义:所谓事务,它是一个操作序列,这些操作要么都执行,要么都不执行,它是一个不可分割的工作单位. 准备工作:为了说明事务的ACID原理,我们使用银行账户及资金管理的案例进行分析. [sql] ...
- JavaScript 模块化简述
JavaScript 模块化简述 前言 关于模块化,最直接的表现就是我们写的 require 和 import 关键字,如果查阅相关资料,就一定会遇到 CommonJS .CMD AMD 这些名词,以 ...
- iOS 开发之版本上线更新流程
iOS 开发之版本上线更新流程 把自己app上线的流程记录下来,希望能够让自己加深印象,也能帮助到一些人便是极好的! 证书和描述文件的配置就不写了,直接配置工程吧. 大致把我自己上线的流程写一下: ...
- iOS开发-通讯录有界面
// // ViewController.m // 06-通讯录(有界面) // #import "ViewController.h" #import <AddressB ...
- Android下基于SDL的位图渲染(二)理论篇
理论篇 上一篇中介绍了如何将SDL2源码应用到Android渲染中,实际上SDL本身提供的android-project实现了基于android的c运行时环境,通过上面实践篇的介绍,就是完成这个环境搭 ...
- javascript中json对象长度
JSON中无法使用length去获取长度,length只针对数组对象适用: var data={"showdata":{"中国人民大学":{"2013 ...
- iOS友盟推送测试模式添加手机设备报红解决如下
设备描述红色一般是没有往友盟发日志,或者appkey漏掉了.先检查是否正确的填写了推送的appkey,统计的方法为MobClick startWithAppkey:推送的方法为UMessage sta ...
- FileNet P8 Content Engine 的分布式部署架构
摘抄笔记:http://www.ibm.com/developerworks/cn/data/library/techarticle/dm-1307wanghaining/ 前言 对于集团公司,企业内 ...
- mysql中文进行全文索引支持问题
先来看看对一个字段做全文索引,作为一个数据库系统需要做哪些工作? 假设一个文章表里面包含几个字段:文章id.文章作者.文章标题.文章内容 比如,我们对文章内容这个字段artilce_content建立 ...