当前位置: 首页 > news >正文

SQL-条件查询与聚合函数的使用

 🎉欢迎您来到我的MySQL基础复习专栏

☆* o(≧▽≦)o *☆哈喽~我是小小恶斯法克🍹
✨博客主页:小小恶斯法克的博客
🎈该系列文章专栏:重拾MySQL
🍹文章作者技术和水平很有限,如果文中出现错误,希望大家能指正🙏
📜 感谢大家的关注! ❤️

目录

DQL-条件查询

1.语法

2.条件 

常用的比较运算符如下:

常用的逻辑运算符如下:

案例:

聚合函数

1.常见的聚合函数

2.聚合函数的语法

案例:


DQL-条件查询

1.语法

SELECT 字段列表  FROM	表名	WHERE	条件列表 ;

where之后跟的是条件列表,也就意味着where之后的条件可以是一个也可以是多个,后面的条件我们可以有哪些构建形式呢?

2.条件 

常用的比较运算符如下:

比较运算符

功能

>

大于

>=

大于等于

<

小于

<=

小于等于

=

等于

<> !=

不等于

BETWEEN ..(最小值).. AND ..(最大值)..

在某个范围之内(含最小、最大值)

IN(...)

in之后的列表中的值,多选一,列表中的值满足其一即可,然后用逗号分隔各项值

LIKE 占位符

模糊匹配(_匹配单个字符, %匹配任意个字符)

IS NULL

NULL

   IS NOT NULL    不是空值NULL

常用的逻辑运算符如下:

逻辑运算符

功能

AND &&

并且 (多个条件同时成立)

OR ||

或者 (多个条件任意一个成立)

NOT !

, 不 是

案例:

1.查询年龄等于 53 的员工

select * from emp where age = 53 ;

执行如下 :

2.查询年龄小于 20 的员工信息

select * from emp where age < 20 ;

执行如下:

3.查询年龄小于等于 20 的员工信息

select * from emp where age <= 20;

 执行如下:

4.查询没有身份证号的员工信息

select * from emp where idcard is null;

执行如下: 

5.查询有身份证号的员工信息

select * from emp where idcard is not null;

执行如下:

6.查询年龄不等于 88 的员工信息

select * from emp where age != 88;select * from emp where age <> 88;

 执行如下:

7.查询年龄在15(包含) 20(包含)之间的员工信息

select * from emp where age >= 15 && age <= 20;select * from emp where age >= 15 and age <= 20;select * from emp where age between 15 and 20

执行如下:

8.查询性别为 女 且年龄小于 25岁的员工信息 

select * from emp where gender = '女' and age < 25;

执行如下:

9.查询年龄等于18 20 40 的员工信息

 in的语法还是跟大家多唠叨唠叨,它的意思是你给予的列表(18,20,40)满足了其中一个就把数据查询,也就是查询年龄等于18的人,查询年龄等于20的人,查询年龄等于40的人

select * from emp where age = 18 or age = 20 or age =40;select * from emp where age in(18,20,40);

执行如下:

10.查询姓名为三个字的员工信息

 需要使用like,在SQL语句中模糊匹配有两个占位符,一个是下划线_,代表单个字符,一个是百分号%,匹配任意字符

 本题中需要两个字符怎么思考?一个下划线代表一个字符,那么三个下划线就代表三个字符,也就是三个字的名字

select * from emp where name like '__';

 执行如下:

11.查询身份证号最后一位是X的员工信息

方法一:最后一位是x,也就意味前面的字符是什么无所谓,那么前面我可以使用任意字符匹配%,用%匹配17位,因为是任意多少位,所以我去限制最后一位必须是x,让它成为第18位必须是x,这样就可以解决了

方法二:既然一个下划线_代表一个字符,那么我用17个下划线占17个位置,最后一个位置我限制为x,就解决了

select * from emp where idcard like '%X';select * from emp where idcard like '_________________X';

执行如下:

可以看出两者的查询结果相同


聚合函数

定义:将一列数据作为一个整体,进行纵向计算 。

1.常见的聚合函数

 重点!!这些聚合函数都是作用于表中的某一列,纵向对数据进行的一个操作

函数

功能

count

统计数量  (可以统计某一列,或者整张表的记录数)

max

最大值

min

最小值

avg

平均值

sum

求和

2.聚合函数的语法

SELECT 聚合函数(字段列表) FROM 表名 ;

注意 : NULL值是不参与所有聚合函数运算的。

案例:

1.统计该企业员工数量

1.count()括号里面去填写字段,那么应该填什么字段,我需要求的是整张表的数据,此时可以去使用*,此时查询到的就是整张表的总数据量

2.如果不写*,也可以写具体的字段id,此时统计的就是这张表id字段的数量,每一条记录都有对应的id

3.假如我count()里面填写的字段是idcard,那么总数是几?你可以发现总数量是16条,而idcard有值的是15条,我们测试一下,发现确实是15条数据,所以一般我们去统计总数量,直接count(*)比较保险

select count(*) from emp; -- 统计的是总记录数select count(id) from emp; select count(idcard) from emp; -- 统计的是idcard字段不为null的记录数

 执行效果如图:

提前拓展:对于count聚合函数,统计符合条件的总记录数,还可以通过   count(数字/字符串)的形式进行统计查询,比如: 

select count(1) from emp;

对于count(*) 、count(字段)、 count(1) 的具体原理,我们到时候复习进阶篇中SQL优化部分会详细学习,此处大家只需要知道如何使用即可。

2.统计该企业员工的最小年龄

 这里大家需要注意!不要理解错误了,我们去查询age这一纵列然后去寻找最小的年龄是多少,数字是几,然后返回这个年龄数值,而并非返回年龄最小的这个人的所有字段的数据,这个有很多人会理解错误,希望大家注意!

select min(age) from emp;

执行如下: 

3.统计该企业员工的最大年龄

select max(age) from emp;

执行如下: 

4.统计该企业员工的平均年龄

select avg(age) from emp;

 执行如下:

5.统计北京地区员工的年龄之和

select sum(age) from emp where workaddress = '北京';

 此时我们先查询下北京地区的员工有哪些?

求年龄之和用到sum函数,此时我们直接把*改为 sum(age)即可,注意,这里最最重要的是条件,关注到我们有一个条件限制,北京地区的员工,所有我们肯定是需要增加where的,然后指定workaddress = '北京'

执行如下:

总结:聚合函数非常重要的一点,就是所有的null值是不参与聚合函数的运算的!


相关文章:

SQL-条件查询与聚合函数的使用

&#x1f389;欢迎您来到我的MySQL基础复习专栏 ☆* o(≧▽≦)o *☆哈喽~我是小小恶斯法克&#x1f379; ✨博客主页&#xff1a;小小恶斯法克的博客 &#x1f388;该系列文章专栏&#xff1a;重拾MySQL &#x1f379;文章作者技术和水平很有限&#xff0c;如果文中出现错误&am…...

Qt移植曲线显示

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 文章目录 前言一、确定文件组成&#xff1f;1. 复制新文件2.新建ui窗口 二、实际操作2.1 新建Ui窗口&#xff0c;要添加带.h的否则跳转错误2.2添加文件到.h2.3 添加文件cpp 三…...

基于springboot生鲜交易系统源码和论文

首先,论文一开始便是清楚的论述了系统的研究内容。其次,剖析系统需求分析,弄明白“做什么”,分析包括业务分析和业务流程的分析以及用例分析,更进一步明确系统的需求。然后在明白了系统的需求基础上需要进一步地设计系统,主要包括软件架构模式、整体功能模块、数据库设计。本项…...

vue中鼠标拖动触发滚动条的移动

前言 在做后端管理系统中&#xff0c;像弹窗或大的表单时&#xff0c;经常会有滚动条的出现&#xff0c;但有些时候如流程、图片等操作时&#xff0c;仅仅使用鼠标拖动滚动条操作不太方便&#xff0c;如果使用鼠标拖拽图片或容器来触发滚动条的移动就比较方便了 功能设计 如…...

1、理解Transformer:革新自然语言处理的模型

目录 一、论文题目 二、背景与动机 三、卖点与创新 四、解决的问题 五、具体实现细节 0. Transformer 架构的主要组件 1. 注意力、自注意力&#xff08;Self-Attention&#xff09;到多头注意力&#xff08;Multi-Head Attention&#xff09; 注意力到底是做什么的&…...

Acwing847 图中点的层次(bfs)

这道题用的是bfs&#xff0c;一开始用了dfs搜出了答案为4 题目 给定一个 n个点 m 条边的有向图&#xff0c;图中可能存在重边和自环。 所有边的长度都是 1&#xff0c;点的编号为 1∼n。 请你求出 1 号点到 n 号点的最短距离&#xff0c;如果从 1 号点无法走到 n 号点&…...

windows11通过虚拟机安装Ubuntu20.04

VMware 分为 VMware Workstation Pro 和 VMware Workstation Player, Pro体验期后收费&#xff0c;Player则免费。player 早期不能创建虚拟机&#xff0c;只能Pro创建好后给Player运行&#xff0c;而现在player早已加入创建虚拟机功能&#xff0c;所以使用体验上两者相差不大&a…...

时序预测 | Matlab实现EEMD-SSA-BiLSTM、EEMD-BiLSTM、SSA-BiLSTM、BiLSTM时序预测对比

时序预测 | Matlab实现EEMD-SSA-BiLSTM、EEMD-BiLSTM、SSA-BiLSTM、BiLSTM时间序列预测对比 目录 时序预测 | Matlab实现EEMD-SSA-BiLSTM、EEMD-BiLSTM、SSA-BiLSTM、BiLSTM时间序列预测对比预测效果基本介绍程序设计参考资料 预测效果 基本介绍 1.Matlab实现EEMD-SSA-BiLSTM、…...

Android14之解决Pixel手机联网出现感叹号(一百八十)

简介&#xff1a; CSDN博客专家&#xff0c;专注Android/Linux系统&#xff0c;分享多mic语音方案、音视频、编解码等技术&#xff0c;与大家一起成长&#xff01; 优质专栏&#xff1a;Audio工程师进阶系列【原创干货持续更新中……】&#x1f680; 优质专栏&#xff1a;多媒…...

Vmware虚拟机问题解决方案 运行虚拟机系统蓝屏 运行虚拟机时报错VT-x

1. 运行虚拟机系统蓝屏 可能的原因有两个: 1). 虚拟机所在磁盘的空间不足 ; -------> 清理磁盘空间 。 2). 操作系统版本高, 需要适配新版本的Vmware ; ------> 卸载Vmware15版本, 安装Vmware16版本 。 2. 卸载Vmware步骤 1). 卸载已经安装的VMware 弹出确认框, 点击…...

uni-app中轮播图实现大图预览

参考效果 当轮播图滑动切换的时候更新自定义下标&#xff0c;当图片被点击的时候大图预览。 参考代码 商品详情页轮播图交互 <script setup lang"ts"> // 轮播图变化时 const currentIndex ref(0) const onChange: UniHelper.SwiperOnChange (ev) > …...

了解什么是UV纹理?

在线工具推荐&#xff1a; 3D数字孪生场景编辑器 - GLTF/GLB材质纹理编辑器 - 3D模型在线转换 - Three.js AI自动纹理开发包 - YOLO 虚幻合成数据生成器 - 三维模型预览图生成器 - 3D模型语义搜索引擎 什么是UV&#xff1f; UV 是与几何图形的顶点信息相对应的二维纹理坐…...

【蓝桥备赛】wzy的数组Ⅱ——简单莫队问题

题目链接 wzy的数组Ⅱ 个人思路 本题需要统计区间范围内 数值为 x 在区间出现次数也为 x 的数的个数。区间询问 多次询问&#xff0c;我们选择 莫队。 将多次询问按照区间边界进行排序&#xff0c;每一次区间的移动&#xff0c;先去判断当前区间指针所指向的数是否符合题目…...

学习Qt笔记

前言&#xff1a; 学习笔记的内容来自B站up主阿西拜编程 《Qt6 C开发指南 》2023&#xff08;上册&#xff0c;完整版&#xff09;_哔哩哔哩_bilibili《Qt6 C开发指南 》2023&#xff08;上册&#xff0c;完整版&#xff09;共计84条视频&#xff0c;包括&#xff1a;00书籍介…...

pymssql 报错误解决办法:20002, severity 9

错误 解决办法 python3.6&#xff0c;安装pymssql低版本&#xff08;pymssql-2.1.5-cp36-cp36m-win32.whl&#xff09;...

Web缓存代理

目录 一.Web缓存代理 配置Nginx 缓存代理&#xff1a; 修改web服务器的配置文件&#xff1a; 修改192.168.233.10代理服务器的配置文件&#xff1a; 访问页面看看&#xff1a; 对于一些实时性要求非常高的页面或数据来说&#xff0c;就不应该去设置缓存&#xff0c;下面来…...

Rust-模式解构

match 首先&#xff0c;我们看看使用match的最简单的示例&#xff1a; exhaustive 有些时候我们不想把每种情况一一列出&#xff0c;可以用一个下划线来表达“除了列出来的那些之外的其他情况”&#xff1a; 下划线 下划线还能用在模式匹配的各种地方&#xff0c;用来表示…...

C#基于ScottPlot进行可视化

前言 上一篇文章跟大家分享了用NumSharp实现简单的线性回归&#xff0c;但是没有进行可视化&#xff0c;可能对拟合的过程没有直观的感受&#xff0c;因此今天跟大家介绍一下使用C#基于Scottplot进行可视化&#xff0c;当然Python的代码&#xff0c;我也会同步进行可视化。 P…...

基于JAVA+ssm开发的在线报名系统设计与实现【附源码】

基于JAVAssm开发的在线报名系统设计与实现【附源码】 &#x1f345; 作者主页 央顺技术团队 &#x1f345; 欢迎点赞 &#x1f44d; 收藏 ⭐留言 &#x1f4dd; &#x1f345; 文末获取源码联系方式 &#x1f4dd; &#x1f345; 查看下方微信号获取联系方式 承接各种定制系统 …...

蓝桥——第 3 场 小白入门赛(A-D)

文章目录 一、题目A.召唤神坤基本思路&#xff1a;代码 B.聪明的交换策略基本思路&#xff1a;代码 C.怪兽突击基本思路&#xff1a;代码 D.蓝桥快打基本思路代码 一、题目 A.召唤神坤 基本思路&#xff1a; 贪心&#xff0c; 使结果最大&#xff0c;希望两边w[i],w[k]是较大…...

GStreamer性能优化指南:在Jetson TX2上实现4K视频低延迟处理(基于NVMM内存)

GStreamer性能优化指南&#xff1a;在Jetson TX2上实现4K视频低延迟处理&#xff08;基于NVMM内存&#xff09; 在嵌入式视觉和实时视频处理领域&#xff0c;NVIDIA Jetson TX2凭借其强大的GPU和专用硬件加速单元&#xff0c;成为工业级应用的理想选择。但要将这块开发板的性能…...

别再让电费偷偷溜走!用智能时间开关改造家里的热水器和空调(附保姆级选购指南)

别再让电费偷偷溜走&#xff01;用智能时间开关改造家里的热水器和空调&#xff08;附保姆级选购指南&#xff09; 每到月底收到电费账单时&#xff0c;那种"钱不知不觉就溜走"的感觉总是让人心疼。特别是热水器和空调这两大"电老虎"&#xff0c;它们往往…...

别再只用Set5了!超分辨率模型训练,这5个开源数据集(DIV2K、Flickr2K等)的实战配置与对比

超分辨率模型训练&#xff1a;5个开源数据集的深度实战指南 在超分辨率研究领域&#xff0c;数据集的选择往往决定了模型性能的上限。许多开发者习惯性地使用Set5、Set14等小型数据集&#xff0c;却忽略了更丰富的数据资源可能带来的性能突破。本文将深入解析DIV2K、Flickr2K、…...

你用AI写代码时,是不是总觉得“它懂语法,却搞不定真实工程”?Composer 2的答案在这里

很多开发者都有过这种体验&#xff1a;把一个真实项目需求甩给AI&#xff0c;它能秒出语法完美的代码片段&#xff0c;可一到大型代码库、遗留系统、多文件联动的时候&#xff0c;就开始原地打转。改了半天核心逻辑没动&#xff0c;引入新问题&#xff0c;或者干脆在长链条任务…...

ai辅助开发:告诉快马你的想法,自动生成jdk17最佳实践代码

今天想和大家分享一个特别实用的开发技巧——如何用AI辅助快速掌握JDK17的新特性。作为一个经常需要升级Java版本的开发者&#xff0c;我发现每次版本更新都要花大量时间学习新语法&#xff0c;直到遇到了InsCode(快马)平台的AI辅助功能。 传统开发方式的痛点 以前用JDK8写代码…...

计算机组成原理实验避坑指南:存储器地址映射常见错误及解决方法

计算机组成原理实验避坑指南&#xff1a;存储器地址映射常见错误及解决方法 第一次在Proteus里搭建存储器系统时&#xff0c;看着密密麻麻的地址线和片选信号&#xff0c;我对着实验指导书发呆了半小时——明明按照图示连接了所有线路&#xff0c;可写入RAM的数据总是莫名其妙出…...

SRAM vs ReRAM vs Flash:一张表看懂不同存内计算芯片的优缺点与选型指南

SRAM vs ReRAM vs Flash&#xff1a;存内计算芯片技术选型全景指南 在AI算力需求爆炸式增长的今天&#xff0c;传统冯诺依曼架构的"内存墙"瓶颈日益凸显。存内计算技术通过将计算单元嵌入存储阵列&#xff0c;彻底打破了数据搬运的能耗桎梏。根据最新行业报告&#x…...

从朱诺到威尼斯:一个可持续旅游模型如何‘开箱即用’解决你的美赛问题二

从朱诺到威尼斯&#xff1a;可持续旅游模型的跨场景迁移实战指南 模型迁移的核心挑战与解决框架 当我们将一个城市的可持续旅游模型迁移到另一个城市时&#xff0c;表面上看似乎只需要更换数据输入&#xff0c;但实际操作中会遇到三个维度的挑战&#xff1a; 1. 资源禀赋差异 自…...

Wan2.2-I2V-A14B部署教程:系统盘50GB+数据盘40GB最小化配置实操

Wan2.2-I2V-A14B部署教程&#xff1a;系统盘50GB数据盘40GB最小化配置实操 1. 镜像概述与核心特性 Wan2.2-I2V-A14B是一款专为文生视频任务优化的私有部署镜像&#xff0c;特别针对RTX 4090D 24GB显存显卡进行了深度优化。这个镜像最大的特点是开箱即用&#xff0c;内置了完整…...

杰理之人声消除额外保留部分频率声音办法【篇】

将原始声音分为两份&#xff0c;一份走原先的人声消除&#xff0c;另一份走EQ调节 最后输出声音 原先人声消除效果&#xff08;左-右&#xff09; EQ调节后声音...