• 售前

  • 售后

热门帖子
入门百科

group by用法详解

[复制链接]
石头剪子布854 显示全部楼层 发表于 2022-1-7 22:40:59 |阅读模式 打印 上一主题 下一主题
一.  概述

group_by的意思是根据by对数据按照哪个字段进行分组,大概是哪几个字段进行分组。
二.  语法
  1. select   字段    from   表名   where    条件     group   by       字段
  2. 或者
  3. select   字段    from   表名   group  by    字段    having    过滤条件
  4. 注意:对于过滤条件,可以先用where,再用group  by或者是先用group  by,再用having
复制代码
三.  案例

1  创建表格并插入数据

分析:在plsql  developer上创建表格并插入数据,以便下面进行简朴字段分组以及多个字段分组,同时还联合聚合函数进行运算。
  1. [code]创建student表
复制代码
      create table student(id  int not null ,name varchar2(30),grade varchar2(30),salary  varchar2(30))
  1. 在student表中插入数据
复制代码
insert into student values(1,'zhangsan','A',1500);insert into student values(2,'lisi','B',3000);insert into student values(1,'zhangsan','A',1500);insert into student values(4,'qianwu','A',3500);insert into student values(3,'zhaoliu','C',2000);insert into student values(1,'huyifei','D',2500);数据插入到student表中的结果
[/code]2  单个字段分组

①  select   grade   from   student               查出所有学生品级(包罗重复的品级)

②  select  grade  from  student   group   by   grade       查出学生品级的种类(按照品级分别,去除重复的)

3  多个字段分组

select  name , sum(salary)    from   student    group  by   name , grade      按照名字和品级分别,查看相同名字下的工资总和
注意:这里有一点需要分析一下,多个字段进行分组时,需要将name和grade看成一个团体,只要是name和grade相同的可以分成一组;假如只是name相同,grade不同就不是一组。

4  共同聚合函数一起利用

常用的聚合函数:count() , sum() , avg() , max() , min()
  1. [code]count():计数
复制代码
select  name , count(*)  from  student   group  by  name           查看表中相同人名的个数得出的如下结果
[/code]
  1. [code]sum():求和
复制代码
select  name , sum(salary)   from   student   group  by   name      查看表中人员的工资和(同姓的工资相加)得出的如下结果
[/code]
  1. [code]avg():平均数
复制代码
select  name , avg(salary)   from  student   group  by  name  , grade       查看表中人员的工资平均数(同姓工资平均数)得出的如下结果
[/code]
  1. [code]max():最大值
复制代码
select   grade , max(salary)   from   student   group  by   grade           查看按品级分别人员工资最大值得出的如下结果
[/code]
  1. [code]min():最小值
复制代码
select   grade , min(salary)   from   student   group  by   grade        查看按品级分别人员工资最小值得出的如下结果
[/code]以上就是本文的全部内容,盼望对各人的学习有所资助,也盼望各人多多支持脚本之家。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x

帖子地址: 

回复

使用道具 举报

分享
推广
火星云矿 | 预约S19Pro,享500抵1000!
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

草根技术分享(草根吧)是全球知名中文IT技术交流平台,创建于2021年,包含原创博客、精品问答、职业培训、技术社区、资源下载等产品服务,提供原创、优质、完整内容的专业IT技术开发社区。
  • 官方手机版

  • 微信公众号

  • 商务合作