分组统计

news2024/12/28 18:04:42

目录

分组统计

根据部门编号分组,查询每个部门的编号、人数、平均工资

根据职位分组,统计出每个职位的人数、最低工资与最高工资

如果查询不使用 GROUP BY 子句,那么 SELECT 子句中只允许出现统计函数,其他任何字段不允许出现

如果查询中使用了 GROUP BY 子句,那么 SELECT 子句中只允许出现分组字段、统计函数,其他任何字段都不允许出现 

统计函数允许嵌套,但是嵌套之后的 SELECT 子句里面只允许出现嵌套函数,而不允许出现其他任何字段,包括分组字段 


Oracle从入门到总裁:https://blog.csdn.net/weixin_67859959/article/details/135209645

分组统计

下面来介绍一下分组统计。什么是分组统计?什么情况下可以分组?

例如,部门之间进行拔河比赛,那么分组的依据就是部门,因为每个员工都有相同的部门编号

例如,上厕所,男女各一边,实际上这也是一个分组

那么也就证明了一点:分组的前提是存在重复

select [distinct] * | 分组列 [ 别名 ] , 分组列 [ 别名 ] ...
from 表名称 [ 别名 ], 表名称 [ 别名 ],... 
[where 限定条件 (s)]
[group by 分组字段 , 分组字段 , 分组字段 ,...] 
[order by  排序字段 [asc | desc], 排序字段 [asc | desc],...]

这个语法格式是在前面语法格式基础上又增加了一行条件,

即 group by 子句,主要实现对筛选的行分组。其他行的作用和以前的完全一样

根据部门编号分组,查询每个部门的编号、人数、平均工资

SQL> select deptno,count(*),avg(sal)
  2  from emp
  3  group by deptno;

    DEPTNO   COUNT(*)   AVG(SAL)
---------- ---------- ----------
        30          6 1566.66667
        10          3 2916.66667
        20          3 2258.33333

根据职位分组,统计出每个职位的人数、最低工资与最高工资

SQL> select job,count(*),min(sal),max(sal)
  2  from emp
  3  group by job;

JOB                  COUNT(*)   MIN(SAL)   MAX(SAL)
------------------ ---------- ---------- ----------
CLERK                       3        800       1300
SALESMAN                    4       1250       1600
ANALYST                     1       3000       3000
MANAGER                     3       2450       2975
PRESIDENT                   1       5000       5000

实际上,group by 子句之所以使用着比较麻烦,是因为分组的时候有一些约束条件

如果查询不使用 GROUP BY 子句,那么 SELECT 子句中只允许出现统计函数,其他任何字段不允许出现

如果查询中使用了 GROUP BY 子句,那么 SELECT 子句中只允许出现分组字段、统计函数,其他任何字段都不允许出现 

统计函数允许嵌套,但是嵌套之后的 SELECT 子句里面只允许出现嵌套函数,而不允许出现其他任何字段,包括分组字段 

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1461645.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

统计图雷达图绘制方法

统计图雷达图绘制方法 常用的统计图有条形图、柱形图、折线图、曲线图、饼图、环形图、扇形图。 前几类图比较容易绘制,饼图环形图绘制较难。 还有一种雷达图的绘制也较难,今提供雷达图的绘制方法供参考。 本方法采用C语言的最基本功能: &am…

Leetcode刷题笔记题解(C++):83. 删除排序链表中的重复元素

思路:链表相关的问题建议就是画图去解决,虽然理解起来很容易,但就是写代码写不出来有时候,依次去遍历第二节点如果与前一个节点相等则跳过,不相等则遍历第三个节点 /*** Definition for singly-linked list.* struct …

yolov5-tracking-xxxsort yolov5融合六种跟踪算法(二)--目标识别

本次开源计划主要针对大学生无人机相关竞赛的视觉算法开发。 开源代码仓库链接:https://github.com/zzhmx/yolov5-tracking-xxxsort.git 先按照之前的博客配置好环境: yolov5-tracking-xxxsort yolov5融合六种跟踪算法(一)–环境配…

Canvas绘制

Canvas绘制 一、介绍效果图 二、画圆1 写一个页面2 画一个圆(点)3 效果 三 画直线1 写一个页面2 画直线3 效果 四 用直线连接两个点1 写一个页面2 连线3 效果 五 画随机点1 写一个页面2 随机点3 效果 六 画随机点并连线1 写一个页面2 画点连线3 效果 七 …

GEE使用 Sentinel-1 SAR影像 和 Otsu 方法绘制洪水地图

洪水是世界上最常见、破坏性最大的自然灾害之一,造成了巨大的生命和财产损失。此外,随着气候变化的影响,近年来,洪灾变得更加频繁和不可预测。为了最大限度地减少生命和财产损失,必须迅速发现洪水蔓延的情况,并及时采取必要的干预措施。洪水蔓延探测大多使用光学传感器或…

如何批量注册多个Google账号?

电子邮件地址对于在线帐户至关重要,但它们可能被滥用于发送垃圾邮件。因此Google使用先进的算法来检测可疑的注册和验证尝试,保护用户免受垃圾邮件和其他有害活动的侵害,所以如果需要批量注册多个Google帐户,需要做好账号防关联&a…

QT 文本编辑框textBrowser接收数据保持光标在底部的方法

目录 1.实现效果2.代码 1.实现效果 2.代码 右键textBrowser加入触发信号textChanged: 双击,跳转到槽函数:(文本更改时执行该函数) void Widget::updata_textBrowser() void Widget::on_textBrowser_textChanged() {//光标移动至底部ui->…

Py之pydantic:pydantic的简介、安装、使用方法之详细攻略

Py之pydantic:pydantic的简介、安装、使用方法之详细攻略 目录 pydantic的简介 1、Pydantic V1.10 vs. V2 pydantic的安装 pydantic的使用方法 1、简单的示例 pydantic的简介 pydantic是使用Python类型提示进行数据验证。快速且可扩展,Pydantic与您…

【云原生】Docker 安全与CA证书生成

目录 容器的安全行问题 Docker 容器与虚拟机的区别 Docker 存在的安全问题 1.Docker 自身漏洞 2.Docker 源码问题 Docker 架构缺陷与安全机制 1. 容器之间的局域网攻击 2. DDoS 攻击耗尽资源 3. 有漏洞的系统调用 4. 共享root用户权限 Docker 安全基线标准 1. 内…

【UI自动化】八大元素定位方式|xpath css id name...

目录 一、基础元素定位 二、cssSelector元素定位——通过元素属性定位 三、xpath元素定位——通过路径 1 、xpath绝对定位 (用的不多) 缺点:一旦页面结构发生变化(比如重新设计时,路径少两节)&#x…

HGAME 2024 WEEK 2

hgame2024官方题解-week2.pdf Misc ek1ng_want_girlfriend 打开流量包后点击“导出对象” 打开这张图片就是flag Web What the cow say?

粉丝2000 啦,选对赛道,做正确的事情,粉丝涨到2000说明大家对我做的事情还是非常的认可的,继续坚持中,将相关资料做了视频整理

1,见证历史成长,粉丝涨到 2000 啦 2,把视频进行分类,研究xinference相关视频 【xinference】(1):在autodl上,使用xinference部署chatglm3大模型,支持函数调用&#xff0…

(一)全连接神经网络

参考资料:https://zhuanlan.zhihu.com/p/273595649 一、前向传播 1、第一层 (1)线性层 { z 1 ( 1 ) w 11 ( 1 ) ∗ x 1 w 12 ( 1 ) ∗ x 2 b 1 ( 1 ) z 2 ( 1 ) w 21 ( 1 ) ∗ x 1 w 22 ( 1 ) ∗ x 2 b 2 ( 1 ) z 3 ( 1 ) w 31 ( …

CCF-B类SGP‘24 4月10日截稿!速速行动!

会议之眼 快讯 第22届SGP(Eurographics Symposium on Geometry Processing)即欧洲图形学几何处理专题讨论会将于 2024 年 6月24 -日至26日在美国麻省理工学院举行!SGP是传播几何处理新研究想法和尖端成果的首要学术会议。作为该领域的重要学术盛事,SGP会…

IO 作业 24/2/21

1、使用多线程完成两个文件的拷贝&#xff0c;第一个线程拷贝前一半&#xff0c;第二个线程拷贝后一半&#xff0c;主线程回收两个线程的资源 #include <myhead.h> //定义分支线程1 void *task1(void *arg) {int fdr-1;//只读打开被复制文件if((fdropen("./111.txt…

sora生成高质量视频的原理

Sora是怎样生成视频的&#xff1f; 写在前面 Sora 是 OpenAI 在日前发布的超强视频生成 AI&#xff0c;旨在探索 AI 如何在理解真实世界运动和交互方面做得更好Sora目前无灰度体验 面临挑战 Sora面对的挑战就像是需要处理和理解来自世界各地、不同设备拍摄的数以百万计的图…

Java SourceDataLine 播放MP3音频 显示频谱

Java SourceDataLine 播放MP3音频 显示频谱 1 添加依赖2 快速傅里叶变换2.1 FFT.java2.2 Complex.java 3 音频播放3.1 Player.java3.1 XPlayer.java 4 显示频谱5 结果 项目Value音频格式 添加依赖*.wav(JDK 原生支持)*.pcm(JDK 原生支持)*.au(JDK 原生支持)*.aiff(JDK 原生支持…

2024 年 6 个变革性大型机预测

当今数字经济中组织的成功需要速度&#xff0c;即通过新应用程序和服务快速响应市场趋势、即时访问关键数据以及在问题影响服务之前解决问题的能力。进入新的一年&#xff0c;大型机上新兴技术的采用和适应将使企业能够拥抱不断变化的市场力量&#xff0c;并将其转化为竞争优势…

JVM对象的创建流程与内存分配

对象的创建流程与内存分配 创建流程对象内存分配方式内存分配安全问题对象内存分配流程【重要】:对象怎样才会进入老年代?重点 案例演示:对象分配过程大对象直接进入老年代02-对象内存分配的过程: 创建流程 加载 验证 解析 准备 初始化 使用 写在 对象内存分配方式 内存分配…

C语言系列(所需基础:大学C语言及格)-3-字符串/ASCII码表

文章目录 一、字符串二、ASCII码表 一、字符串 用" "来定义字符串&#xff1a; #include <stdio.h>int main() {"";//空字符串"hkl";//由""定义的字符串return(0); }用数组来存储字符串&#xff0c;并打印&#xff1a; #incl…