MySQL条件查询

article/2025/9/18 14:21:17
我们知道从 MySQL 表中使用 SELECT 语句来查询数据,如需有条件地从表中选取数据,可将 WHERE 子句添加到 SELECT 语句中。
SELECT 字段名 FROM 表名 WHERE 条件;

 

还有个运算符表:

运算符表

关系运算符功能
>大于
>=大于等于
<小于
<=小于等于
=等于
<> 或 !=不等于
逻辑运算符功能
AND 或 &&并且(多个条件同时成立)
OR 或 ||或者(多个条件任意成立一个)
NOT 或 !非,不是
其他功能
BETWEEN...AND...在某个范围之间(含最小、最大值)
IN(...)在in之后的列表中的值,多选一
LIKE模糊匹配(_匹配单个字符,%匹配任意个字符)
IS [NOT] NULL是 NULL

(我这就不一一演示了)

 

 

 

 

 

 

 

 

聚合函数(统计函数)

SQL 允许对表中的数据进行计算,将一列数据作为一个整体,进行纵向计算。

函数名作用
MAX(column)返回某列的最低值(没有则返回NULL)
MIN(column)返回某列的最高值(没有则返回NULL)
COUNT(column)返回某列的行数(不包括 NULL 值)
COUNT(*)返回被选列行数(包括NULL)
SUM(column)求和
AVG(column)求平均值

其中 COUNT 函数可用于任何数据类型 (因为它只是计数),而 SUM 、AVG 函数都只能对数值类型做计算,MAX 和 MIN 可用于数值、字符串或是日期时间数据类型。

 

 

 

 

 

 

分组查询

1.统计函数一般是搭配分组查询;但是单独使用的情况一定是有的。

那么什么是分组呢?**

分组这个概念在生活中其实是很常见的,比如有以下需求:

  • 1.在一个班级之中,要求男女各一组进行辩论赛

  • 2.在公司中,要求每个部门一组进行拔河比赛

对于第一个需求,假设存在学生表,那么在学生表之中一定会存在一个性别字段,性别只可能是男或者女。

而在公司之中,如果要进行部门分组,肯定需要一个部门列的内容存在重复。

分组只对数据有重复的字段才有意义。

语法

SELECT 分组字段/聚合函数 FROM 表名 [WHERE 条件] GROUP BY 分组字段 [HAVING 分组后条件];

 

 

 

 

查询需求:

注意事项**

  1. 如果一个查询之中不存在GROUP BY子句,那么在SELECT子句之中只允许出现统计函数,其他任何字段都不允许出现。

#错误的语句
SELECT ename,COUNT(job) FROM emp;
#正确的语句
SELECT COUNT(job) FROM emp;
在统计查询之中(存在GROUP BY子句),SELECT子句之中只允许出现分组字段(GROUP BY之后定义的字段)和统计函数,其他的任何字段都不允许出现。
#错误的语句
SELECT ename,COUNT(job) FROM emp GROUP BY job;
#正确的语句
SELECT job,COUNT(job) FROM emp GROUP BY job;

在以后进行分组操作的时候,本着一个原则:GROUP BY子句之中允许出现的字段才是SELECT子句中允许出现的字段。

 

 

 

 

WHERE和HAVING区别

  • WHERE:是在分组之前使用(可以没有GROUP BY),不允许使用统计函数;

  • HAVING:是在分组之后使用(必须结合GROUP BY),允许使用统计函数。

排序查询

通过条件查询语句可以查询到符合用户需求的数据,但是查询到的数据一般都是按照数据最初被添加到表中的顺序来显示。为了使查询结果的顺序满足用户的要求,MySQL 提供了 ORDER BY 关键字来对查询结果进行排序。

在实际应用中经常需要对查询结果进行排序,比如,在网上购物时,可以将商品按照价格进行排序;在医院的挂号系统中,可以按照挂号的先后顺序进行排序等。

语法

SELECT 字段名 FROM 表名 ... ORDER BY 排序字段名 [ASC|DESC];

语法说明:

  • 排序字段名:表示需要排序的字段名称,多个字段时用逗号隔开。

  • ASC|DESC:ASC表示字段按升序排序;DESC表示字段按降序排序。其中ASC为默认值。

特点

  • ORDER BY子句一般放到查询语句的最后面,LIMIT字句除外。

  • 当排序的字段中存在空值时,ORDER BY 会将该空值作为最小值来对待。

  • ORDER BY 指定多个字段进行排序时,MySQL 会按照字段的顺序从左到右依次进行排序。

  • 注意:在对多个字段进行排序时,排序的第一个字段必须有相同的值,才会对第二个字段进行排序。如果第一个字段数据中所有的值都是唯一的,MySQL 将不再对第二个字段进行排序。

  •  

     

     

     

     

分页查询

对于比较多的数据,如果在一个页面全部显示,查看起来会眼花缭乱。如果能进行分页显示,将更加快捷、清新的浏览!

语法

SELECT 字段名 FROM 表名 LIMIT 起始索引,查询记录数;

特点

  • 起始索引从0开始,起始索引 = (查询页码 - 1) * 每页显示记录数;

  • 如果查询的是第一页数据,起始索引可以省略,直接简写为LIMIT 10。

 

 

  


http://chatgpt.dhexx.cn/article/6cLJXVpl.shtml

相关文章

MySQL——条件查询

目录 一、语法二、筛选条件的分类三、案例补充 一、语法 select 查询列表 from 表名 where 筛选条件 二、筛选条件的分类 1、简单条件运算符 &#xff08;大于&#xff09; >、 < 、、>、 <、 <>&#xff08;安全等于&#xff09;、 <> 等价!&#xf…

特征值篇2——特征子空间

下面我们证明特征值 λ \lambda λ对应的所有特征向量所组成的集合为一个子空间 方法1&#xff1a; 摘自 Linear Algebra and its applications David C. Lay 方法2&#xff1a; 摘自 The Linear Algebra a Beginning Graduate Student Ought to Know (Second Edition) Jonat…

高等数学-线性代数:已知特征值,求解特征空间的特征向量

高等数学-线性代数&#xff1a;已知特征值&#xff0c;求解特征空间的特征向量[练习]

特征空间在风险建模中的应用

上周日我报名听了萧老师主讲的公开课"风控模型开发之特征筛选"&#xff0c;今天想和大家分享一下课程的第一部分内容&#xff1a;特征空间。 目录 常用数据源介绍 特征衍生常见方法 特征回溯 特征筛选一般流程 如果各位感兴趣的话评论区与我留言互动&#xff0c…

深度理解矩阵的奇异值,特征值

文章目录 正交矩阵特征值分解——EVD矩阵特征值和特征向量定义特征值的含义分解过程详解 奇异值分解——SVD矩阵的奇异值与特征值有什么相似之处与区别之处 看了蛮多关于矩阵特征值&#xff0c;奇异值的文章&#xff0c;将他们全部整理出来以供复习。 在网上看到有很多文章介绍…

特征向量中心性

特征向量中心性的基本思想是&#xff0c;一个节点的中心性是相邻节点中心性的函数。也就是说&#xff0c;与你连接的人越重要&#xff0c;你也就越重要。 特征向量中心性和点度中心性不同&#xff0c;一个点度中心性高即拥有很多连接的节点&#xff0c;但特征向量中心性不一定…

MM2022 | 在特征空间中的多模态数据增强方法

MM2022 | 在特征空间中的多模态数据增强方法 【写在前面】 每小时&#xff0c;社交媒体和用户生成的内容平台上都会发布大量的视觉内容。为了通过自然语言查询查找相关视频&#xff0c;文本视频检索方法在过去几年中受到了越来越多的关注。引入了数据增强技术&#xff0c;以通…

机器学习(一)--输入空间、特征空间、输出空间

注&#xff1a;在此讨论的内容默认是针对监督学习 一、输入空间 直白点&#xff0c;输入‘X’可能取值的集合就是输入空间&#xff08;input space&#xff09;。输入空间可以是有限集合空间&#xff0c;也可以是整个欧式空间。 二、输出空间 同样的&#xff0c;输出‘Y’可能…

特征空间、(数据集)线性可分:线性(二分类)模型

文章目录 二分类问题特征空间线性可分线性分类模型 在学习 SVM 时发现自己没能很好地理解在线性模型中充当决策函数角色的 符号函数Sign()&#xff0c;说明对线性模型的理解还不够到位&#xff0c;下面主要梳理一下对数据集 “线性可分”概念以及其它相关概念的一些理解&…

【数学和算法】特征值、特征向量、特征空间,变换矩阵的行列式和特征值

可以参考马同学的博客&#xff1a; 如何理解矩阵特征值&#xff1f; 也可以参考B站小崔说数的视频教程&#xff1a;【线性代数的本质】特征值/特征向量的几何涵义 矩阵的特征值和特征向量定义&#xff1a; 1、特征值是线性代数中的重要概念&#xff0c;设A是n阶方阵&#xff0c…

机器学习中的特征空间

声明&#xff1a;这篇博文主要是对参考文献中的那个PPT的学习之后记下的一些笔记&#xff0c;整理出来与大家一起分享&#xff0c;若笔记中有任何错误还请不吝指出&#xff0c;文中可能会使用到原作者的一些图&#xff0c;若侵犯到作者的权益&#xff0c;还请告知&#xff0c;我…

JQuery按name属性选择元素

方法1&#xff1a;使用name属性选择器 name属性选择器可用于按name属性选择元素。此选择器选择值与指定值完全相等的元素。 语法&#xff1a;[name“nameOfElement”] 示例&#xff1a; 输出&#xff1a; 方法2&#xff1a;使用javascript按名称获取元素并将其传递给jQuer…

js的各种选择器

Js选择器总结 一、原生JS选择器# JS选择器常用的有getElementById()、getElementsByName()、getElementsByTagName()、getElementsByClassName()、querySelector()、querySelectorAll() A&#xff1a; getElementById(ID): 返回对指定ID的第一个对象的引用&#xff0c;如果在…

微信小程序之选择器

本文是转载自&#xff1a;https://blog.csdn.net/qq_35713752/article/details/80295372 选择器示例demo&#xff1a; 1.普通选择器 2.多列选择器 3.时间选择器 4.日期选择器 5.省市区选择器 源码&#xff1a; wxml <view class"container"> <…

关于HTML中常用选择器

一.五种基本选择器: 1&#xff09;*&#xff1a;匹配HTML中所有元素&#xff0c;一般用于除去内边距和外边距&#xff0c;其性能较差&#xff0c;不推荐使用&#xff1b; 2&#xff09;标签名&#xff08;在JavaScript中也称节点&#xff09;:标签选择器。注意在用标签修改样式…

JQuery选择器超级详细

基本选择器 id选择器&#xff1a;$("#id的属性值") 类选择器&#xff1a;$(".class的属性值") 标签选择器&#xff1a;$("标签名") 并集选择器&#xff1a;$("选择器1&#xff0c;选择器2") 层级选择器 后代选择器&#xff1a;$…

JavaScript选择器

JavaScript选择器 通过 id 来查找 HTML 元素 比如 <p id"#a1">huanmin</p> <script type"text/javascript">var namedocument.getElementById("a1")console.log(name) </script>同过name选择器查找所有name属性的元素…

JQuery 选择器

JQuery 选择器 花(0) jQuery 的选择器可谓之强大无比&#xff0c;这里简单地总结一下常用的元素查找方法 $("#myELement") 选择id值等于myElement的元素&#xff0c;id值不能重复在文档中只能有一个id值是myElement所以得到的是唯一的元素 $("div") …