【lesson17】MySQL表的基本操作--表去重、聚合函数和group by

news2024/9/20 12:41:00

文章目录

  • MySQL表的基本操作介绍
  • 插入结果查询(表去重)
    • 建表
    • 插入数据
    • 操作
  • 聚合函数
    • 建表
    • 插入数据
    • 操作
  • group by(分组)
    • 建表
    • 插入数据
    • 操作

MySQL表的基本操作介绍

CRUD : Create(创建), Retrieve(读取),Update(更新),Delete(删除)

插入结果查询(表去重)

在这里插入图片描述

建表

在这里插入图片描述

插入数据

在这里插入图片描述

操作

删除表中的的重复复记录,重复的数据只能有一份
1.去重(不影响原表)
在这里插入图片描述
2.创建一个新的表,表的结构和duplicate_table表一样
在这里插入图片描述
3.将 duplicate_table 的去重数据插入到 no_duplicate_table
在这里插入图片描述
4.通过重命名表,实现原子的去重操作+查看duplicate_table
在这里插入图片描述
为什么最后是通过rename的方式进行的呢?
就是单纯的想等一切都就绪了,然后统一对数据进行放入、更新和生效等。

聚合函数

在这里插入图片描述

建表

这里就不建立,之前就已经建过了,大家可以根据表信息自己去建立表
在这里插入图片描述

插入数据

因为之前就已经插入过了,这里就给大家看一下数据表,要操作的大家可以自行插入数据。
在这里插入图片描述

操作

统计班级共有多少同学
原表:
在这里插入图片描述
统计:在这里插入图片描述
统计本次考试的数学成绩分数个数
原表:
在这里插入图片描述
统计:
在这里插入图片描述
我们会发现统计出来是错的,因为数学成绩有重复的,重复的数学成绩只能算一个。
所以统计的时候要去重。
在这里插入图片描述
我们会发现不能统计的同时去重,要先去重再统计
在这里插入图片描述
统计数学成绩总分
原表:
在这里插入图片描述
统计:
在这里插入图片描述
统计平均总分
原表:
在这里插入图片描述
统计:
在这里插入图片描述
返回英语最高分
原表:
在这里插入图片描述
统计:
在这里插入图片描述
返回 > 90 分以上的数学最低分
原表:
在这里插入图片描述
统计:
在这里插入图片描述

group by(分组)

如果我们既要打出数学成绩最高分又要打出那个人的名字可以吗?
在这里插入图片描述
我们测试了发现不行,为什么呢?
因为name不能聚合。
这时我们就要用到分组了。

语法:
在这里插入图片描述

建表

准备工作,创建一个雇员信息表(来自oracle 9i的经典测试表)

  • EMP员工表
  • DEPT部门表
  • SALGRADE工资等级表

在这里插入图片描述

插入数据

大家根据数据自行插入
部门表数据:
在这里插入图片描述
工资等级表数据:
在这里插入图片描述
员工信息表数据:
在这里插入图片描述

操作

显示每个部门的平均工资和最高工资
在这里插入图片描述
在这里插入图片描述

显示每个部门的每种岗位的平均工资和最低工资
在这里插入图片描述
显示平均工资低于2000的部门和它的平均工资
首先统计各个部门的平均工资:
在这里插入图片描述
最后having和group by配合使用,对group by结果进行过滤
在这里插入图片描述
having经常和group by搭配使用,作用是对分组进行筛选,作用有些像where。
having和where的区别理解?
1.执行顺序的理解
2.对结果的理解
3.where无法替换having

1.执行顺序的理解:
显示每个部门平均工资低于2000的岗位,但是不要把SMITH这个人计算在其中
在这里插入图片描述
在这里插入图片描述
2.对结果的理解
where:对具体任意列进行条件筛选
having:对聚合之后的结果进行条件筛选

having和where条件筛选的阶段是不同的!
不要单纯的认为,只有磁盘上表的结果导入到mysql中、真实存在的表才叫做表。
中间筛选出来的、包括最终结果,其实全部都是逻辑上的表!
'‘MySQL’'一切皆表,未来只要我们能处理单表的CURD,多有SQL场景下的表,我们全部都能用统一方式进行。

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

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

相关文章

2.vue学习(8-7)

文章目录 8.数据绑定9.el与data的2种写法 8.数据绑定 单向数据绑定就是我们学的v-bind的方式,vue对象变了,页面才变。但是页面变了,vue对象不会变。 双向数据绑定需要用v-model,就能实现双向的改变。 注意:不是所有的…

我的4096创作纪念日

机缘 岁月如梭,时光一晃已经在CSDN扎根4096天了。第一次注册CSDN好像还是在2012年,那会还没大学毕业。初入CSDN,只是把他当作自己编程时遇到问题的在线笔记记录而已,没想到无意间还帮助了其他遇到同样问题困扰的同学。而在这4096…

简析555电压检测电路

555定时器的简介 555定时器是一种多用途的数字——模拟混合集成电路,利用它能极方便地构成施密特触发器、单稳态触发器和多谐振荡器。由于使用灵活、方便,所以555定时器在波形的产生与交换、测量与控制、家用电器、电子玩具等许多领域中都得到了广泛应用…

idea添加外部jar包

在日常开发中在lib包的里面添加了外部的jar,如何将外部的包添加到java类库中,这样项目就可以引用相应的jar包,操作如下: 1.先将需要的jar复制到lib包如下,如下截图,图标前面没有箭头,表示还未添…

echart饼状图文字大小位置颜色调整属性

echart饼状图文字大小位置颜色调整属性 文字位置对应属性代码效果图 文字位置对应属性 1.图中‘1’的文字大小调整在‘legend’对象下的‘textStyle’属性里 2.图中‘2’的文字大小调整在‘tooltip’对象下的‘textStyle’属性里 3.图中‘3’的文字大小调整在‘series’对象下的…

flink 读取 apache paimon表,查看source的延迟时间 消费堆积情况

paimon source查看消费的数据延迟了多久 如果没有延迟 则显示0 官方文档 Metrics | Apache Paimon

什么是证券RPA?证券RPA解决什么问题?证券RPA实施难点在哪里?

RPA智能机器人,也称为“机器人流程自动化”、“软件机器人”,使用智能自动化技术来执行人类工人的重复性办公室任务。它结合API和用户界面(UI)交互来集成和执行企业和生产力应用程序之间的重复性任务。只要预先设计好使用规则,RPA就可以模拟人…

.NET 自定义中间件 判断是否存在 AllowAnonymousAttribute 特性 来判断是否需要身份验证

public Task InvokeAsync(HttpContext context){// 获取终点路由特性var endpointFeature context.Features.Get<IEndpointFeature>();// 获取是否定义了特性var attribute endpointFeature?.Endpoint?.Metadata?.GetMetadata<AllowAnonymousAttribute>();if …

项目中webpack优化配置(持续更新)

项目中webpack优化配置 1. 开发效率&#xff0c; 体验 DLL&#xff08;开发过程中减少构建时间和增加应用程序的性能&#xff09; 使用 DllPlugin 进行分包&#xff0c;使用 DllReferencePlugin(索引链接) 对 manifest.json 引用&#xff0c;让一些基本不会改动的代码先打包…

JVM调优排错专题

JVM调优排错专题 1 打开MAT报错 1 打开MAT报错 下载了linux版本的 MAT 软件&#xff0c;1.15.0版本。 下载地址&#xff1a;https://eclipse.dev/mat/downloads.php 运行时报错了。 错误截图 报错日志 wittasus:/usr/develop/mat$ ./MemoryAnalyzer Unrecognized option:…

【PHD申请文书】motivation letter|不限字数|Medical Imaging and Application

本文目录 APPLICATION ESSAYCriticism思考 Ref: https://essayforum.com/letters/tryst-technology-motivation-erasmus-degree-85383/ APPLICATION ESSAY My tryst with technology - motivation letter for Erasmus Degree in Medical Imaging and Application 原文机翻My…

视频素材网站全新上线,海量高清视频等你来探索~

亲爱的视频制作爱好者们&#xff0c;好消息来啦&#xff01;我们的视频素材网站全新上线啦&#xff01;这次我们为大家带来了海量的高清视频素材&#xff0c;无论是风景、城市、人物、动物还是各种特效、背景等&#xff0c;应有尽有&#xff0c;满足您在视频制作过程中的各种需…

WebMvcConfigurer接口详解及使用方式(Spring-WebMvc)

简介 如下图所示WebMvcConfigurer是spring-webmvc jar包下的一个接口&#xff0c;spring-webmvc jar包又来源于spring-boot-starter-web&#xff0c;所以要使用WebMvcConfigurer要引入spring-boot-starter-web依赖。WebMvcConfigurer接口提供了常用的web应用拦截方法。通过实现…

使用iframe后,鼠标点击位置和实际点击位置不一致

结论&#xff1a; 因为iframe域名和父页面域名不一致导致的 在本地启动项目的时候&#xff0c;鼠标指定的元素在iframe上&#xff0c;发现点击事件不起作用了 点击iframe里面的元素&#xff0c;发现也错位了&#xff0c; 上线之后&#xff0c;父页面部署的域名和iframe中src的…

WebCamTexture报错

使用WebCamTexture把相机的画面显示到 RawImage 上 using UnityEngine; using UnityEngine.UI;public class WebCamTextureTest : MonoBehaviour {public RawImage RawImage;private WebCamTexture _webCamTexture;private Color32[] _colorBuff;private Texture2D _texture2D…

TSINGSEE青犀边缘AI计算基于车辆结构化数据的车辆监控方案

随着人工智能技术的不断发展&#xff0c;边缘AI技术逐渐成为智能交通领域的研究热点。其中&#xff0c;基于边缘AI的车辆结构化数据技术与车辆监控系统是实现智能交通系统的重要手段之一。为了满足市场需求&#xff0c;TSINGSEE青犀边缘AI智能分析网关/视频智能分析平台推出了一…

(四)STM32 操作 GPIO 点亮 LED灯 / GPIO工作模式

目录 1. STM32 工程模板中的工程目录介绍 2. GPIO 简介 3. GPIO 框图剖析 1&#xff09;保护二极管及上、下拉电阻 2&#xff09; P-MOS 管和 N-MOS 管 3&#xff09;输出数据寄存器 3.1&#xff09;ODR 端口输出数据寄存器 3.2&#xff09;BSRR 端口位设置/清除寄存器 4&a…

JavaEE:线程池精讲

目录 一.什么是线程池 二.线程池的实现原理 &#x1f388;为什么要有工厂模式&#xff1f; 三.线程池的构造方法解读 &#x1f388;线程池的拒绝策略 四.自己实现一个线程池 一.什么是线程池 简单来说&#xff0c;线程池就好比一块鱼塘&#xff0c;鱼塘中的每条鱼就是一个线程…

Ansys Lumerical|大尺寸超透镜的光线追迹仿真

附件下载 联系工作人员获取附件 前言 本文介绍了设计和模拟厘米尺度超透镜的工作流程。 我们将一系列不同直径的纳米尺寸等级单元(以下称为纳米单元)在Lumerical中建模&#xff0c;使用RCWA方法对每种直径的纳米单元进行分析&#xff0c;建立纳米元素直径以及其诱发的相位和…

【网络安全】-Linux操作系统基础

文章目录 Linux操作系统目录结构Linux命令格式Linux文件和目录操作命令Linux用户和用户组操作命令Linux查看和操作文件内容命令Linux文件压缩和解压缩命令Linux网络管理命令Linux磁盘管理和系统状态命令Linux安全加固总结 Linux是一个强大的操作系统&#xff0c;广泛用于服务器…