GROUP BY 用法(转载)——group by 有一个原则,就是 select 后面的所有列中,没有使用聚合函
2016-07-27 15:33
344 查看
group by在我之前的工作中不一定用到,可惜group by在一般的笔试测试的时候经常用到。所以今天刚开一个博客记录下group
by用法,为避免以后再犯这个错误。
聚合函数
求和函数——SUM()
计数函数——COUNT()
最大/最小值函数—MAX()/MIN()
均值函数——AVG()
—————————————————————————————————————————
GROUP BY 是分组查询, 一般 GROUP BY 是和 聚合函数配合使用,你可以想想
你用了GROUP BY 按 ITEM.ITEMNUM 这个字段分组,那其他字段内容不同,变成一对多又改如何显示呢,比如下面所示
A B
1 abc
1 bcd
1 asdfg
select A,B from table group by A
你说这样查出来是什么结果,
A B
abc
1 bcd
asdfg
右边3条如何变成一条,所以需要用到聚合函数,比如
select A,count(B) 数量 from table group by A
这样的结果就是
A 数量
1 3
——————————————————————————————————————
Store_Information 表格
store_name Sales Date
Los Angeles $1500 Jan-05-1999
San Diego $250 Jan-07-1999
Los Angeles $300 Jan-08-1999
Boston $700 Jan-08-1999
我们就打入
SELECT store_name, SUM(Sales) FROM Store_Information GROUP BY store_name
结果:
store_name SUM(Sales)
Los Angeles $1800
San Diego $250
Boston $700
————————————————————————————————————————
group by 有一个原则,就是 select 后面的所有列中,没有使用聚合函数的列,必须出现在 group by 后面
by用法,为避免以后再犯这个错误。
聚合函数
求和函数——SUM()
计数函数——COUNT()
最大/最小值函数—MAX()/MIN()
均值函数——AVG()
—————————————————————————————————————————
GROUP BY 是分组查询, 一般 GROUP BY 是和 聚合函数配合使用,你可以想想
你用了GROUP BY 按 ITEM.ITEMNUM 这个字段分组,那其他字段内容不同,变成一对多又改如何显示呢,比如下面所示
A B
1 abc
1 bcd
1 asdfg
select A,B from table group by A
你说这样查出来是什么结果,
A B
abc
1 bcd
asdfg
右边3条如何变成一条,所以需要用到聚合函数,比如
select A,count(B) 数量 from table group by A
这样的结果就是
A 数量
1 3
——————————————————————————————————————
Store_Information 表格
store_name Sales Date
Los Angeles $1500 Jan-05-1999
San Diego $250 Jan-07-1999
Los Angeles $300 Jan-08-1999
Boston $700 Jan-08-1999
我们就打入
SELECT store_name, SUM(Sales) FROM Store_Information GROUP BY store_name
结果:
store_name SUM(Sales)
Los Angeles $1800
San Diego $250
Boston $700
————————————————————————————————————————
group by 有一个原则,就是 select 后面的所有列中,没有使用聚合函数的列,必须出现在 group by 后面
相关文章推荐
- 【编程之法】1.3序列的打印
- nagios系列(七)nagios通过自定义脚本的方式监控mysql主从同步
- C/C++求职宝典21个重点笔记(常考笔试面试点)
- grails中list链表操作
- 0726日作业
- HDU 1716 排列2
- TextFiled修改placeholder的颜色和字体大小
- nagios系列(七)nagios通过自定义脚本的方式监控mysql主从同步
- java判断字符是否乱码
- 杂——C++
- SpringMVC拦截器
- 解决ionic隐藏状况的方法
- vagrant入门教程--网络配置(9)
- ORACLE导出序列 .
- SpringMVC非注解的处理器适配器-HandlerAdapter
- poj 2352 线段树 二分
- 如何判断链表中是否有环
- ElasticSearch跨域查询(多词搜索)
- 20160727
- Codeforces 144D Missile Silos 最短路