【lesson17】MySQL表的基本操作--表去重、聚合函数和group by
文章目录
- 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场景下的表,我们全部都能用统一方式进行。
相关文章:
【lesson17】MySQL表的基本操作--表去重、聚合函数和group by
文章目录 MySQL表的基本操作介绍插入结果查询(表去重)建表插入数据操作 聚合函数建表插入数据操作 group by(分组)建表插入数据操作 MySQL表的基本操作介绍 CRUD : Create(创建), Retrieve(读取),Update(更新)&#x…...
面试题总结(十二)【Qt】【华清远见西安中心】
Qt是什么? Qt是一个跨平台的应用程序开发框架,最初由挪威的Trolltech公司开发。它提供了一套丰富的工具和类库,用于开发图形用户界面(GUI)应用程序、网络应用程序和嵌入式应用程序等。 Qt框架基于C语言编写,…...
GPT-4V with Emotion:A Zero-shot Benchmark forMultimodal Emotion Understanding
GPT-4V with Emotion:A Zero-shot Benchmark forMultimodal Emotion Understanding GPT-4V情感:多模态情感理解的zero-shot基准 1.摘要 最近,GPT-4视觉系统(GPT-4V)在各种多模态任务中表现出非凡的性能。然而,它在情感识别方面的功效仍然是个问题。本文定…...
CogVLM与CogAgent:开源视觉语言模型的新里程碑
引言 随着机器学习的快速发展,视觉语言模型(VLM)的研究取得了显著的进步。今天,我们很高兴介绍两款强大的开源视觉语言模型:CogVLM和CogAgent。这两款模型在图像理解和多轮对话等领域表现出色,为人工智能的…...
CSS的盒子模型(重点)
网页布局的三大核心:盒子模型、浮动、定位 网页布局的过程: 1. 先准备好相关的网页元素,网页元素基本都是盒子 Box 。 2. 利用 CSS 设置好盒子样式,然后摆放到相应位置。 3. 往盒子里面装内容.网页布局的核心本质: 就…...
论文笔记:Bilinear Attention Networks
更精简的论文学习笔记 1、摘要 多模态学习中的注意力网络提供了一种选择性地利用给定视觉信息的有效方法。然而,学习每一对多模态输入通道的注意力分布的计算成本是非常昂贵的。为了解决这个问题,共同注意力为每个模态建立了两个独立的注意分布&#x…...
2312llvm,01基本介绍
LLVM设计的核心是它的IR. 在把LLVMIR翻译特定汇编语言时,LLVM首先将程序变换为(DAG)有向无环图,以更易选指(SelectionDAG)容易,然后变换回三地址指令,来调度指令(MachineFunction). 为了看清驱动编译程序时,调用的后续工具,用-###命令行参数: $ clang -### hello.c -o hello…...
Spring之手写IoC
学习的最大理由是想摆脱平庸,早一天就多一份人生的精彩;迟一天就多一天平庸的困扰。各位小伙伴,如果您: 想系统/深入学习某技术知识点… 一个人摸索学习很难坚持,想组团高效学习… 想写博客但无从下手,急需…...
IDEA运行JSP启动后页面中文乱码
源代码截图: 运行结果截图: 在<head>标签内加入代码 <% page contentType"text/html; charsetgb2312"%> 重启服务器,问题已改善 ————————————————— 该文仅供学习以及参考,可做笔记收藏…...
Python 自动化之收发邮件(二)
发邮件之Windows进程监控 文章目录 发邮件之Windows进程监控前言一、基本内容二、基本结构三、库模块四、函数模块1.进程监控2.邮件发送 五、程序运行模块1.获取时间2.用户输入3.进程监控3.1进程启动发邮件3.2进程停止发邮件 总结 前言 上一篇简单写了一下如何进行邮件的收发操…...
RHEL8_Linux_Ansible常用模块的使用
本章主要介绍Ansible中最常见模块的使用 shell模块文件管理模块软件包管理模块服务管理模块磁盘管理模块用户管理模块防火墙管理模块 ansible的基本用法如下。 ansible 机器名 -m 模块x -a "模块的参数" 对被管理机器执行不同的操作,只需要调用不同的模块…...
2023 英特尔On技术创新大会直播 | AI 融合发展之旅
前言 2023 年的英特尔 On 技术创新大会中国站,主要聚焦最新一代增强 AI 能力的计算平台,深度讲解如何支持开放、多架构的软件方案,以赋能人工智能并推动其持续发展。 大会的目标之一是优化系统并赋能开发者,特别注重芯片增强技术…...
【JavaWeb】往浏览器打印一个hello world
上集:建一个web项目 第一步:建好Servlet类的文件 右键src,建一个class 就行 第二步:编代码 可以直接复制粘贴 用来测试的类 import javax.servlet.annotation.WebServlet; import javax.servlet.http.HttpServlet; //↓是注解࿰…...
技术探秘:在RISC Zero中验证FHE——由隐藏到证明:FHE验证的ZK路径(1)
1. 引言 开源代码实现见: https://github.com/hashcloak/fhe_risc0_zkvm(Rust)https://github.com/weikengchen/vfhe-profiled(Rust)https://github.com/l2iterative/vfhe0(Rust) L2IV Resea…...
Spring容器中scope为prototype类型Bean的回收机制
文章目录 一、背景二、AutowireCapableBeanFactory 方法 autowireBean 分析三、Spring 容器中 scope 为 prototype 类型 Bean 的回收机制四、总结 一、背景 最近做 DDD 实践时,遇到业务对象需要交给 Spring 管理才能做一些职责内事情。假设账号注册邮箱应用层代码流…...
Python生成器(python系列25)
前言:什么是生成器,他和迭代器的区别是什么?什么时生成器表达式,为什么和列表推导式那么像呢? 生成器: 定义:能够动态(循环一次,计算一次,返回一次…...
Vue项目搭建过程
Vue项目搭建过程 1、安装NodeJs 1.1 下载安装包 在 http://nodejs.cn/download/ 上下载64位安装包,然后进行安装,和普通软件的安装一样。 C:\Users\Administrator>node -v v16.13.1C:\Users\Administrator>npm -v 8.5.51.2 安装cnpm # 安装cn…...
系统分析师(软考)知识点整理(一)
第一章 信息 信息是不确定性的减少 xi: n个状态中的第i个状态p(xi):出现第i个状态的概率b: b一般取值为2 特征 #mermaid-svg-pvPkY9RE5GZIIIxl {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-pvPkY9RE5GZIIIxl…...
2021年数维杯国际大学生数学建模D题2021年电影市场票房波动模型分析求解全过程文档及程序
2021年数维杯国际大学生数学建模 D题 2021年电影市场票房波动模型分析 原题再现: 1、电影票房预测建模背景 随着人们文化消费需求的增加,电影院和银幕的数量不断增加,我国的电影产业不断呈现出繁荣景象。2019年,全国电影票房…...
Kubernetes 的用法和解析 -- 5
一.企业级镜像仓库Harbo 准备:另起一台新服务器,并配置docker yum源,安装docker 和 docker-compose 1.1 上传harbor安装包并安装 [rootharbor ~]# tar xf harbor-offline-installer-v2.5.3.tgz [rootharbor ~]# cp harbor.yml.tmpl harbor…...
深入浅出Asp.Net Core MVC应用开发系列-AspNetCore中的日志记录
ASP.NET Core 是一个跨平台的开源框架,用于在 Windows、macOS 或 Linux 上生成基于云的新式 Web 应用。 ASP.NET Core 中的日志记录 .NET 通过 ILogger API 支持高性能结构化日志记录,以帮助监视应用程序行为和诊断问题。 可以通过配置不同的记录提供程…...
【根据当天日期输出明天的日期(需对闰年做判定)。】2022-5-15
缘由根据当天日期输出明天的日期(需对闰年做判定)。日期类型结构体如下: struct data{ int year; int month; int day;};-编程语言-CSDN问答 struct mdata{ int year; int month; int day; }mdata; int 天数(int year, int month) {switch (month){case 1: case 3:…...
docker详细操作--未完待续
docker介绍 docker官网: Docker:加速容器应用程序开发 harbor官网:Harbor - Harbor 中文 使用docker加速器: Docker镜像极速下载服务 - 毫秒镜像 是什么 Docker 是一种开源的容器化平台,用于将应用程序及其依赖项(如库、运行时环…...
.Net框架,除了EF还有很多很多......
文章目录 1. 引言2. Dapper2.1 概述与设计原理2.2 核心功能与代码示例基本查询多映射查询存储过程调用 2.3 性能优化原理2.4 适用场景 3. NHibernate3.1 概述与架构设计3.2 映射配置示例Fluent映射XML映射 3.3 查询示例HQL查询Criteria APILINQ提供程序 3.4 高级特性3.5 适用场…...
Java如何权衡是使用无序的数组还是有序的数组
在 Java 中,选择有序数组还是无序数组取决于具体场景的性能需求与操作特点。以下是关键权衡因素及决策指南: ⚖️ 核心权衡维度 维度有序数组无序数组查询性能二分查找 O(log n) ✅线性扫描 O(n) ❌插入/删除需移位维护顺序 O(n) ❌直接操作尾部 O(1) ✅内存开销与无序数组相…...
FastAPI 教程:从入门到实践
FastAPI 是一个现代、快速(高性能)的 Web 框架,用于构建 API,支持 Python 3.6。它基于标准 Python 类型提示,易于学习且功能强大。以下是一个完整的 FastAPI 入门教程,涵盖从环境搭建到创建并运行一个简单的…...
LeetCode - 394. 字符串解码
题目 394. 字符串解码 - 力扣(LeetCode) 思路 使用两个栈:一个存储重复次数,一个存储字符串 遍历输入字符串: 数字处理:遇到数字时,累积计算重复次数左括号处理:保存当前状态&a…...
抖音增长新引擎:品融电商,一站式全案代运营领跑者
抖音增长新引擎:品融电商,一站式全案代运营领跑者 在抖音这个日活超7亿的流量汪洋中,品牌如何破浪前行?自建团队成本高、效果难控;碎片化运营又难成合力——这正是许多企业面临的增长困局。品融电商以「抖音全案代运营…...
将对透视变换后的图像使用Otsu进行阈值化,来分离黑色和白色像素。这句话中的Otsu是什么意思?
Otsu 是一种自动阈值化方法,用于将图像分割为前景和背景。它通过最小化图像的类内方差或等价地最大化类间方差来选择最佳阈值。这种方法特别适用于图像的二值化处理,能够自动确定一个阈值,将图像中的像素分为黑色和白色两类。 Otsu 方法的原…...
c#开发AI模型对话
AI模型 前面已经介绍了一般AI模型本地部署,直接调用现成的模型数据。这里主要讲述讲接口集成到我们自己的程序中使用方式。 微软提供了ML.NET来开发和使用AI模型,但是目前国内可能使用不多,至少实践例子很少看见。开发训练模型就不介绍了&am…...
