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

Day07-MySQL

DQL查询数据(重点)

where条件字句

作用:检索数据中符合条件的值

搜索的条件由一个或多个表达式组成,结果为布尔值

逻辑运算符

运算符 语法 描述
and && a and b a&&b 逻辑与,双真为真
or || a or b a||b 逻辑或,有真为真
not ! not a !a 逻辑非,取反
-- ============= WHERE ==============
SELECT `studentno`,`studentresult` FROM result-- 查询考试成绩在 95-100分之间
SELECT `studentno`,`studentresult` FROM result
WHERE studentresult>=80 AND studentresult<=90-- &&
SELECT `studentno`,`studentresult` FROM result
WHERE studentresult>=80 && studentresult<=90-- 模糊查询(区间)
SELECT `studentno`,`studentresult` FROM result
WHERE studentresult between 80 AND 90-- 除了1000号学生之外的同学的成绩
SELECT `studentno`,`studentresult` FROM result
WHERE NOT studentno =1000-- !=
SELECT `studentno`,`studentresult` FROM result
WHERE studentno!=1000

模糊查询:比较运算符

运算符 语法 描述
IS NULL a is null 操作符为空,结果为真
IS NOT NULL a is not null 操作符不空,结果为真
BETWEEM a between b and c 如果a在b和c之间,结果为真
LIKE a like b SQL匹配,如果a匹配b,则结果为真
IN a in(a1,a2,…) 假设a在a1,a2,……其中一个值中,结果为真
-- ============= 模糊查询 ============= 
-- 查询姓刘的同学
-- like结合	%(代表任意字符)	_(一个字符)
SELECT `studentno`,`studentname` FROM `student`
WHERE studentname LIKE '刘%'-- 查询姓刘的同学,名字后只有一个字的
SELECT `studentno`,`studentname` FROM `student`
WHERE studentname LIKE '刘_'-- 查询名字中间有星字的同学
SELECT `studentno`,`studentname` FROM `student`
WHERE studentname LIKE '%星%'-- ============== IN ===============
-- IN只能匹配精确的字段值
-- 查询1001 1002 1003号学员信息 
SELECT `studentno`,`studentname` FROM `student`
WHERE studentno IN(1001,1002,1003)-- 查询在北京的学生
SELECT `studentno`,`studentname` FROM `student`
WHERE address IN('上海浦东')-- ===== NULL    NOT NULL=====
-- 查询地址为空的学生
SELECT `studentno`,`studentname` FROM `student`
WHERE address IS NULL OR address=''-- 查询有身份证号的同学
SELECT `studentno`,`studentname` FROM `student`
WHERE identitycard IS NOT NULL -- 查询没有出生日期的同学
SELECT `studentno`,`studentname` FROM `student`
WHERE `borndate` IS NULL

联表查询

JOIN 对比

MySQL—7种join_tblemp表-CSDN博客

-- ============联表查询 JOIN===========
--  查询参加了考试的同学(学号,姓名,科目编号,分数)
/*思路
1.分析需求,分析查询的字段来自哪些表
2.确定使用哪种连接查询
3.确定相同数据的交叉点
4.判断的条件:学生表中的 studentno=成绩表 studentno
*/-- JOIN (连接的表) ON (判断的条件)  连接查询
-- WHERE                         等值查询-- INNER JOIN
SELECT s.studentno,studentname,subjectno,studentresult 
FROM student AS s
INNER JOIN result AS r
WHERE s.studentno = r.studentno
-- WHERE用来连表后的过滤-- LEFT JOIN
SELECT s.studentno,studentname,subjectno,studentresult 
FROM student AS s
LEFT JOIN result AS r
ON s.studentno = r.studentno
-- ON用来当连表前的条件-- RIGHT JOIN
SELECT s.studentno,studentname,subjectno,studentresult 
FROM student AS s
RIGHT JOIN result AS r
ON s.studentno = r.studentno-- 查询缺考的同学
SELECT s.studentno,studentname,subjectno,studentresult 
FROM student AS s
LEFT JOIN result AS r
ON s.studentno = r.studentno
WHERE studentresult IS NULL
操作 描述
inner join 如果表中至少有一个匹配,就返回值
left join 会从左表中返回所有的值,即使右表中没有匹配
right join 会从右表中返回所有的值,即使左表中没有匹配
http://www.jsqmd.com/news/694807/

相关文章:

  • 计算机毕业设计:Python量化交易管理平台 Django框架 requests爬虫 数据分析 可视化 大数据 大模型(建议收藏)✅
  • 细粒度并行计算架构Squire的设计与优化实践
  • AI数学基础:线性代数、概率论与微积分实战解析
  • Nucleus Co-Op技术解密:单机游戏分屏多人的创新突破与完整实现指南
  • 别再死记硬背SVPWM公式了!用STM32的定时器PWM模式2,手把手教你从Simulink仿真到代码落地
  • 3步轻松配置TTS-Vue桌面语音合成工具完整指南
  • 创建 ext4/xfs 文件系统供容器挂载
  • 别只拿JTAG下载程序了!手把手教你用边界扫描给电路板做‘体检’
  • 别再混淆了!一张图讲清EsKF、IEKF和EsIKF在VIO/SLAM中的区别与联系
  • 如何快速获取Hadoop Windows工具包:winutils完整指南 [特殊字符]
  • 题解:AtCoder AT_awc0003_b Line of Handshakes
  • STM32 DAC输出波形实战避坑:为什么你的正弦波有毛刺?如何优化三角波线性度?
  • 维普AI率工具哪个好?2026年4月8款产品深度对比
  • DNSLog实战指南:三大主流平台特性解析与场景应用
  • 别再死记DH参数了!用MATLAB Robotic Toolbox快速验证你的机器人模型(附工作空间计算代码)
  • Linux下4G/5G模块实战:从AT指令到NetworkManager,手把手搞定蜂窝网络连接
  • 如何从已禁用 iTunes 连接的 iPhone 中恢复数据
  • 题解:AtCoder AT_awc0003_c Bargain Sale Selection
  • AI SoC全芯片DFT实战
  • 别再只用enable password了!思科设备密码安全进阶:配置加密的enable secret与Console口超时
  • 深度强化学习与自然语言理解的融合实践
  • 手写一个分布式RPC框架!
  • AirSim安装报错‘No module named numpy’?一个隐藏的依赖陷阱与解决方案
  • 面试官最爱问的C++服务器项目:TinyWebServer中Epoll与Reactor模式如何协同工作?
  • 如何在 Realme 上恢复已删除的联系人
  • 【电能质量扰动】基于ML和DWT的电能质量扰动分类方法研究(Matlab实现)
  • 从零到一:手写笔迹还原算法(InkCanvas)的深度剖析与实战应用
  • Pycharm里用Conda环境跑Selenium总报错?这份避坑指南帮你一次搞定所有依赖和路径问题
  • ArcGIS新手必看:别再搞混OBJECTID、FID和OID了,一次讲清区别和实战用法
  • NLP实战入门——从零构建智能对话系统(一)