group by 两个字段
group by 两个字段
转发:https://www.cnblogs.com/happyWolf666/p/8196147.html
group by 的简单说明: group by 一般和聚合函数一起使用才有意义,比如 count sum avg等
使用group by的两个要素:
(1) 出现在select后面的字段 要么是是聚合函数中的,要么就是group by 中的.
(2) 要筛选结果 可以先使用where 再用group by 或者先用group by 再用having
下面看下 group by多个条件的分析:
---------- 测试数据初始化 begin --------------------
在SQL查询器输入以下语句
create table test1
(
a varchar2(20),
b varchar2(20),
c varchar2(20)
);
insert into test1 values(1,‘a’,‘甲’);
insert into test1 values(1,‘a’,‘甲’);
insert into test1 values(1,‘a’,‘甲’);
insert into test1 values(1,‘a’,‘甲’);
insert into test1 values(1,‘a’,‘乙’);
insert into test1 values(1,‘b’,‘乙’);
insert into test1 values(1,‘b’,‘乙’);
insert into test1 values(1,‘b’,‘乙’);
---------- 测试数据初始化 end--------------------
第一次查询
select * from test1; 结果如下图:
结果中 按照b列来分:则是 5个a 3个b. 按照c列来分:则是 4个甲 4个乙.
第二次查询 按照 b列来分组 代码如下
select count(a),b from test1 group by b;
第三次 按照 c列来分组 代码如下
select count(a),c from test1 group by c;
第四次 按照 b c两个条件来分组
select count(a),b,c from test1 group by b,c;
可以看出 group by 两个条件的工作过程:
先对第一个条件b列的值 进行分组,分为 第一组:1-5, 第二组6-8,
然后又对已经存在的两个分组用条件二 c列的值进行分组,发现第一组又可以分为两组 1-4,5
第五次 按照 c b 顺序分组
select count(a),b,c from test1 group by c,b;
group by 两个字段相关推荐
- 查询sql一个字段重复的数据mysql_sql查询按两个字段查询重复记录
展开全部 1.改成如下语句: select shiyan003.* from shiyan003 right join (select xm,sfzhm from shiyan003 group by ...
- oracle group by 两项,Oracle中group by 的扩展函数rollup、cube、grouping sets
Oracle的group by除了基本使用方法以外,还有3种扩展使用方法,各自是rollup.cube.grouping sets.分别介绍例如以下: 1.rollup 对数据库表emp.如果当中两个 ...
- 求平均数、百分率、最大值、最小值、两个字段相差秒数的SQL
平均数: avg(字段名) 百分率:分子/分母 count(case when 字段名及条件 then 1 else bull end) / count(*) 最大值: max(字段名) 最小值: m ...
- 平均成绩是计算数学计算机英语三门,创建一个查询,计算并显示“学号”和“平均成绩”两个字段内容,其中平均成绩 是计算数学、计算机和英语_开卷宝...
"学生表"中有"学号"."姓名"."性别"和"入学成绩"等字段.执行如下SQL命令后的结果是( ). ...
- MySQL.MyBatis怎么将查询的两个字段作为Map的key和value
MySQL.MyBatis怎么将查询的两个字段作为Map的key和value 问题的由来 前端使用Echarts图标显示汇总数据.需要形式如下的数据: {"C20": 42.01, ...
- mysql 查询两个字段相同的数据_sql语句如何查询一个表中某两个字段的相同数据?...
查询一个表中某两个字段的相同数据代码是:Select Name,ID From A group by Name,ID having count (*)>1. 结构化查询语言(Structured ...
- mysql 两个分组条件_数据库关于group by 两个或以上条件的分析
首先group by 的简单说明: group by 一般和聚合函数一起使用才有意义,比如 count sum avg等,使用group by的两个要素: (1) 出现在select后面的字段 要么是 ...
- oracle查询相同的值,oracle 查询两个字段值相同的记录,
oracle 查询两个字段值相同的记录,select A.* from tb_mend_enrol A, (select A.Typeid, A.address from tb_mend_enrol ...
- 使用sed和awk取除最后两个字段之外的字段
字符串示例为: 1 /Users/yfan/Downloads/dsc20170801_jar/releases/com/netfinworks/ufs/ufs-client/ufs-client-2 ...
最新文章
- 象过河怎么用远程服务器,象过河远程协助的教程
- 一些经典的常用ASP代码[经典简单] (2)
- 玩转html5(五)---月球绕着地球转,地球绕着太阳转(canvas实现,同样可以动哦)...
- 码云怎么创建公开的仓库_使用码云或GitHub搭建简单的个人网站(补充hexo搭建博客)...
- MySQL表联合查询 理论基础:外键、操作关联表(一)
- Python gensim库word2vec 基本用法
- cad加载dll_你的CAD为什么安装不上?进来看看你就知道了
- java当前时间查询,Java实现查询记录的时间相对于当前时间
- PHP:CURL分别以GET、POST方式请求HTTPS协议接口api
- nginx location总结
- No package python27 available
- Git教程--基于廖雪峰的教程,最通俗易懂
- 东华大学matlab账号,东华大学银行账号、联行号及税号
- 软件原型设计工具Axure
- 联通鸿蒙卡充值,中国联通“一卡充”实现全业务充值
- Java 随机生成中文姓名,手机号,邮编,住址
- :爱情从来就没有愚人节
- LabVIEW学习心得
- origin如何绘制双y轴曲线_使用Origin软件绘制双y轴曲线图的过程
- 磁链转种子,种子转磁链