【MySQL】全面学习数据库查询技巧:查询指令深度学习指南

发布时间:2026/10/27 21:21:32

【MySQL】全面学习数据库查询技巧:查询指令深度学习指南 *前言本节内容讲述基本查询 基本查询要分为两篇文章进行讲解。 本篇文章主要讲解的是where子句、order by、limit查询。 如果想要学习对应知识的可以观看哦。 ps:本篇内容友友们只要会创建表了就可以看起来了哦*目录Create单行插入多行插入duplicatereplace查询?表达式查询结构去重比较运算符逻辑运算符?where子句结果排序筛选分页结果综合使用* *Create------### 单行插入首先认识一下插入 ? ? ? ? insert into 表名称列属性 不添加默认为全列插入 values(数据这里我们创建一个学生表 mysql create table students( - id int unsigned primary key auto_increment, - sn int unsigned unique key, - name varchar(20) not null, - qq varchar(32) unique key - ); 然后我们插入 insert into students values(1,11, ‘张三’, ‘111111111’);//如果这时候students后面不加括号 就是默认的全列插入。 如果加上括号 那么就是指定插入。 ### 多行插入多行插入就是插入数据的时候添加逗号 多写几条数据。 insert into students values(2,12, ‘张三’, ‘1111111111’), (3, 22, ‘李四’,‘22222222’);### duplicate当我们插入的时候 如果发生了冲突 就不能进行插入。 并且如果加上duplicate key update就能在插入的时候对原数据进行更新### replace除了insert也可以进行替换替换就是如果没有对应的行就进行插入 如果存在就进行替换如果replace一个没有插入过的数据就是一行被影响 但是如果插入一个插入过的就是修改 并且是显示两行被影响查询–查询中我们使用最多的就是select语句 下面我们创建一个表 CREATE TABLE exam_result ( id int unsigned NOT NULL AUTO_INCREMENT, name varchar(20) NOT NULL COMMENT ‘同学姓名’, chinese float DEFAULT ‘0’ COMMENT ‘语文成绩’, math float DEFAULT ‘0’ COMMENT ‘数学成绩’, english float DEFAULT ‘0’ COMMENT ‘英语成绩’, PRIMARY KEY (id) )然后向其中插入一些数据后得到下面我们讲一下如何查询 首先最基本的查询就是 select 列名可以是 代表全部查询;也可以是多列 中间用逗号隔开) from 表名这样就可以查询到上面的图中的信息。### 表达式查询select 可以查询表达式的值所以 我们就可以对表结构里面的列进行表达式运算 进而求值 select name, math chinese from exam_result;也可以重命名 select name, math chinese as total from exam_result;### 结构去重我们查询的结果可以去重 使用distinct select distinct 列名 from 表名;### 比较运算符在mysql中进行条件筛选的时候可能会用到一些运算符 比如下面的比较运算符以及后面的逻辑运算符。 这些运算符有的和我们以前的语言语法一样有的不一样, , , 大于大于等于小于小于等于等于NULL 不安全例如 NULL NULL 的结果是 NULL等于NULL 安全例如 NULL NULL 的结果是 TRUE(1)!, 不等于BETWEEN a0 AND a1范围匹配[a0, a1]如果 a0 value a1返回 TRUE(1)IN (option, …)如果是 option 中的任意一个返回 TRUE(1)IS NULL是 NULLIS NOT NULL不是 NULLLIKE模糊匹配。% 表示任意多个包括 0 个任意字符_ 表示任意一个字符### 逻辑运算符AND多个条件必须都为 TRUE(1)结果才是 TRUE(1)OR任意一个条件为 TRUE(1), 结果为 TRUE(1)NOT条件为 TRUE(1)结果为 FALSE(0)### where子句where子句能够按条件对数据进行行筛选 select * from exam_result where english 60;下面来几个案例1、查询语文成绩在30 ~ 50分的学生 select * from exam_result where chinese between 30 and 50; 2、数学成绩是58或者59或者98或者99的同学的以及数学成绩 select name, math from exam_result where math 58 or math 59 or math 98 or math 99; 也可以使用in select name, math from exam_result where math in (58, 59, 98, 99); 3、姓孙的同学以及孙某同学 姓孙的同学可能是孙某 孙某某。 而孙某只能是孙某 名为单字。 所以使用的通配符不一样 %可以模糊匹配任意多个字。 而_只能模糊匹配一个字 select name from exam_result where name like ‘孙%’; select name from exam_result where name like ‘孙_’; 4、总分在150以下的同学 select name, chinese math english as total from exam_result where chinese math english 150; //注意 where这里不能使用total 因为条件筛选执行顺序是在select 之前。 所以在where的时候还看不到as total。 5、名字不为空的人 select * from exam_result where name is not null; 结果排序----我们可以对查询后的结果进行排序 select name, math from exam_result order by math desc; //desc为降序排序, asc为升序ps:这里要知道的是 null值要比任何值都要小。下面为示例1、查询同学各门成绩 依次按照数学降序英语升序 语文升序的方式显示当数学相同看英语的大小。 当英语相同的时候再看语文的大小 select name, math, english, chinese from exam_result order by math desc, english desc, chinese asc; 2、查询同学的总分 升序排序 select name, math english chinese as total from exam_result order by total; 这里的问题是为什么order by又可以使用别名了呢 首先对于我们来说 要对一个表进行排序 一定要先有数据。但是筛选一定是先让数据筛出再有数据。 **对于一套select语句来说。 一定是from第一 where第二 select第三 order by第四。**筛选分页结果------我们的数据库数据量太大 所以有时候我们就可以使用一下分页 先看几行 再看几行。limit 后面跟数字就是从第一行往下数几行打印。 然后如果是limit数字 数字就是从第一个数字开始往下数几行打印。select * from exam_result limit 1; select * from exam_result limit 3; select * from exam_result limit 2,3;也可以使用limit 数字 offset 页数。 其中 limit是每一页的行数 offset是默认从第几行开始 select * from exam_result limit 2 offset 0; select * from exam_result limit 2 offset 2; select * from exam_result limit 2 offset 3;综合使用----现在示例一个综合使用的例子作为文章的结尾查询大于150的人并按照总分的降序进行排序 然后拿出第一个人的信息 select name, english math chinese total from exam_result as total where english math chinese 150 order by total desc limit 1;——————以上就是本节全部内容哦 如果对友友们有帮助的话可以关注博主 方便学习更多知识哦
延伸阅读

更多相关文章

2026/10/26 1:56:18

【MySQL】MySQL连接池原理与简易网站数据流动是如何进行

MySQL连接池原理与简易网站数据流动是如何进行* 1.MySQL连接池原理* 2.简易网站数据流动是如何进行> 点赞???收藏???关注??? > **你的支持是对我最大的鼓励,我们一起努力吧???**1.MySQL连接池原理------------目前我们对mysql有了一定的理解&…

2026/10/25 5:10:52

【Java报错已解决】org.springframework.beans.factory.BeanCreationException

???很高兴能够在这里和您见面!希望您在这里可以感受到一份轻松愉快的氛围,不仅可以获得有趣的内容和知识,也可以畅所欲言、分享您的想法和见解。> > > > 非常期待和您一起在这个小小的网络世界里共同探索、学习和成长。???…

2026/10/24 17:55:16

用Python解析SEC 13F文件,追踪AI股票机构资金流向

13F 是观察美股机构资金最常用的公开数据切口。当市场开始讨论“AI 躺赢时代结束”时,真正能验证这个判断的,不是某条新闻里的单句话,而是每个季度 SEC 收到的一批 13F 文件。管理规模超过 1 亿美元的美国机构投资经理,需要在季度…

2026/10/27 21:21:09

C++ list迭代器实现原理与STL设计解析

1. 为什么需要关注list迭代器的实现细节?在C标准库中,list作为双向链表容器,其迭代器的实现远比vector这类连续存储容器的迭代器复杂得多。很多开发者在使用list时,往往只停留在"能用迭代器遍历"的层面,却不…

2026/10/27 21:21:09

E2E端到端测试实战:从Playwright选型到CI稳定性治理

e2e,全称 end-to-end,端到端。过去半年我一直在折腾这三个字母——不是写业务代码,而是确保业务代码在真实用户路径上不翻车。如果你正打算给项目接端到端测试,或者已经被一套三天两头 flaky 的 E2E 套件折磨到怀疑人生&#xff0…

2026/10/27 21:21:09

Agent-Reach:构建多智能体系统的可靠通信与编排层

做多智能体系统时,我踩过最大的坑不是模型幻觉,而是 Agent 之间的通信。曾经有次线上跑一套工单处理流程,三个 Agent 协同干活,A 把待复核的任务发给 B,结果 B 没收到,消息被 C 消费了——原因是大家都在同…

2026/10/27 21:21:09

哈希表原理与Java实现:从基础到优化

1. 哈希表基础概念与核心价值哈希表(Hash Table)是每个程序员都应该掌握的基础数据结构之一。我在实际开发中经常用它来优化查询性能,特别是在处理需要快速查找、插入和删除的场景时。简单来说,哈希表通过键值对(key-v…

2026/10/27 21:21:09

OpenMontage:开源自动化剪辑工作流,让视频创作效率翻倍

做了这么多年视频内容工具,我最深的感受是:大多数创作者的瓶颈不是没想法,而是被剪辑这件事本身拖垮了。素材要切、卡点要对、转场要调、字幕要加,一条3分钟的片子背后常常是几十段原始素材和两三个小时的机械操作。OpenMontage就…

2026/10/27 21:16:09

Clawdbot:模块化爬虫工具的核心架构与实战应用

1. Clawdbot 到底是什么? 第一次听说Clawdbot这个名字时,我也是一头雾水。直到上周在调试一个分布式爬虫项目时,偶然发现同事的代码里引用了这个库,才真正开始了解它。简单来说,Clawdbot是一个专门为数据采集场景设计的…

2026/10/27 14:24:03

全国计算机二级C语言真题PDF高效刷题指南

简介:这份PDF是全国计算机二级C语言考试的试题与答案解析,专为备考二级C语言的考生准备。内容涵盖C语言特点与设计理念、程序基本组成单位、main函数执行流程、函数嵌套调用规则、标识符命名规范、整型实型字符型数据类型、八进制十六进制数合法形式、运…

2026/10/27 9:34:54

requests+BeautifulSoup:爬虫抓取h1标题的入门实战指南

简介:一份以实战为导向的Python爬虫入门资源,面向具备基本编程基础、希望快速掌握网络数据抓取的初学者,可解决从零编写简单爬虫的常见困惑。实例以requests库发送HTTP请求、BeautifulSoup解析HTML文档,完整演示从网页中提取 标题…

2026/10/27 0:59:21

递推最小二乘参数辨识MATLAB编程:二阶系统与渐消记忆实现

简介:这是一篇面向控制系统、信号处理与机器学习等领域学习者的最小二乘参数辨识程序说明文档。资源共包含一个docx格式文档,压缩包大小七十八KB,内容围绕递推最小二乘算法和渐消记忆最小二乘算法展开:先构造一个极点位于单位圆内…

2026/10/27 0:02:28

WorkBuddy_新建任务与工作模式19_“模式选错”的典型代价

“模式选错”的典型代价 摘要 在软件工程中,设计模式、架构模式、并发模式乃至团队协作模式的选择,往往在项目早期就决定了后续的开发效率和维护成本。本文通过多个真实场景,剖析“模式选错”带来的典型代价——包括返工成本、技术债务累积、…

2026/10/27 0:02:28

WorkBuddy_新建任务与工作模式20_新手推荐路径

新手推荐路径 摘要 在 AI 辅助开发工具快速普及的今天,新手面对最多的困惑往往不是"工具够不够强",而是"我该从哪一步开始用"。本文提出一条经过实践验证的三阶段学习路径:先从 Ask(问答式交互)起…

还想了解更多?直接咨询顾问

免费诊断 + 免费方案 + 透明报价。

全国咨询热线400-8866-253
免费获取方案
☎咨询二维码 ☎ ↑