MySQL 系统学习系列 - SQL 语句 DQL 语句的使用(1)《MySQL系列篇-03》

devtools/2024/9/25 8:30:34/

SQL 语句 DQL

数据库表常见查询语句

1. 全部查询

  • sql"># 查询全部 [SELECT * FROM 表名]SELECT * FROM stu; # 查询stu表中的所有列# 再 SELECT 语句后加上 distinct 语句,表示去重查询SELECT distinct `name` FROM stu; # 查询stu表中的所有name列(去重)
    

2. 条件查询

  • 在这里插入图片描述

  • sql"># 条件查询 [SELECT * FROM 表名 FROM WHERE 条件]# 比较运算符SELECT * FROM stu FROM WHERE age<7;SELECT `name` FROM stu WHERE ag>=7;......
    
  • sql"># 逻辑运算SELECT * FROM stu WHERE age>=7 and age<18;........
    
  • sql"># 范围查询 [非连续与连续查询]# 非连续 SELECT * FROM 表名 WHERE 条件列 IN (某一个范围逗号隔开)SELECT * FROM stu WHERE age IN (10,18,19); # 表示查询年龄为10、18、19的学生信息SELECT * FROM stu WHERE age=10 or age=18 or age=19;# 该语句与上面的语句等价# 连续 SELECT * FROM 表名 WHERE 条件列 BETWEEN v1 AND v2 [表示在v1到v2的范围之间,包含本身v1,v2]SELECT * FROM stu WHERE age BETWEEN 7 and 18; # 表示查询年龄在7-18之间的学生信息SELECT * FROM stu WHERE age>=7 AND age<=18; # 该语句与上面的语句等价
    
  • # 空值判断# 判空 SELECT * FROM 表名 WHERE 条件列 IS NULLSELECT * FROM stu WHERE age IS NOT NULL;# 判非空 SELECT * FROM 表名 WHERE 条件列 IS NOT NULLSELECT * FROM stu WHERE age IS NULL;/**上面只是判断null不包含空字符- 所以想要包含空字符也包含null的话,可以直接使用空字符来进行判断- 空字符饱和null如下*/SELECT * FROM stu WHERE age!="";SELECT * FROM stu WHERE age="";
    

3. 模糊查询like

  • 在这里插入图片描述

  • sql">  
    # 模糊查询like [SELECT * FROM 表名 WHERE 条件列 LIKE 模糊条件值]# % 任意字符 SELECT * FROM 表名 WHERE 条件列 LIKE v%|%v... SELECT * FROM stu WHERE `name` LIKE "k%"; # 表示查询stu中name首位为k的所有数据# _ 单个字符,即相当于一个(_)代表一个字符SELECT * FROM stu WHERE `name` LIKE "k___"; # 表示查询stu中的name首位为k,并且后面为三个任意字符的的所有数据
    

4. 分页查询

  • 在这里插入图片描述

  • sql"># 分页查询 SELECT * FROM LIMIT/**方式1:limit , [start] , count方式2:limit , count , offset num, start [有问题,可能不支持,不确定]其中;start表示从第几个开始[0=1],count表示查询多少个,offset表示跳过多少个*/# 表示从第1为开始插入5条数据 [默认是从第一条数据开始,所以也可以不写0]SELECT * FROM stu LIMIT 0,5; # 表示跳过两列,查询3列 SELECT * FROM stu LIMIT 3 offset 2; 
    

5. 排序查询

  • 在这里插入图片描述

  • sql"># 排序查询:order by 列名 ASC/DESC,[列1 ASC/DESC]# 对年龄列进行升序排序查询ELECT * FROM stu ORDER BY age ASC;/**多列排序会先进行第一列的排序,在对第一列排序相互来的结果有重复的数据整进行第二列的拍戏,依次类推.....也可以理解为是排序的优先级(或以哪一个为基准等)[自理]*/# 对年龄(age)进行排序,如果有重复的在进行名字(name)的排序 [升序]SELECT * FROM stu ORDER BY age ASC,name ASC;
    

6. 练习与子查询引入

  • sql"># 练习1# 查询stu表中年龄最大的所有数据SELECT * FROM stu WHERE max(age); # 报错,因为where语句中不能存在函数SELECT max(age) FROM stu; # 只能查询年龄最大值的# 使用子查询,就是在查询语句中使用查询语句,记得需要用括号括起来/**该语句可以理解为先查询stu表中年龄的最大值再根据这个最大值,去查找stu中所有符合该结果的数据并以id列进行升序排序*/SELECT * FROM stu WHERE age = (SELECT max(age) FROM stu) ORDER BY id ASC;
    

http://www.ppmy.cn/devtools/99677.html

相关文章

Mac安装Typora

文章目录 介绍软件功能下载安装1.下载完成后打开downloads 双击进行安装2.将软件拖到应用程序中3.在程序坞中搜索打开4.提示安全问题就打开通用&#xff0c;安全隐私与设置5.打开成功 小结 介绍 Typora for mac 是一款简洁的轻量级的markdown编辑器、写作软件。它去除了预览窗…

“华为杯”第十五届中国研究生数学建模竞赛-B题:光传送网建模与价值评估(续)

目录 问题二 5.1 问题分析 5.2 模型建立 5.3 本章小结 问题三 6.1 问题分析 6.2 模型建立​编辑 6.4 本章小结 总结及展望 参考文献 本文篇幅较长,分为上下两篇,上篇详见光传送网建模与价值评估 问题二 5.1 问题分析 光传送网络规划与优化是一项复杂的系统工程,…

【网络】HTTP

在上一篇文章中&#xff0c;我们了解了 协议 的制定与使用流程&#xff0c;不过太过于简陋了&#xff0c;真正的 协议 会复杂得多&#xff0c;也强大得多&#xff0c;比如在网络中使用最为广泛的 HTTP/HTTPS 超文本传输协议 但凡是使用浏览器进行互联网冲浪&#xff0c;那必然…

C++基础面试题 | C和C++的区别?

人生如逆旅&#xff0c;我亦是行人。 - 《临江仙送钱穆父》(苏轼) 2024.8.23 回答重点&#xff1a;C可以认为是C语言的超集&#xff0c;绝大部分C语言代码可以使用C运行 在设计思想上&#xff1a;面向过程 vs 面向对象 C是一种面向过程的编程语言&#xff0c;它侧重于函数和过程…

学习2d直线拟合-2

参考文章 直线拟合算法&#xff08;续&#xff1a;加权最小二乘&#xff09;_加权拟合直线法-CSDN博客 对比了参考文中和opencv中的直线拟合权重&#xff0c;不知道理解的对不对&#xff0c;前者是权重平方&#xff0c;后者没有平方 QtWidgetsApplication1::QtWidgetsApplic…

【图像增强】使用 Albumentations Python 库(01)

目录 一、说明 二、Albumentations库 2.1 如何安装 2.2 测试代码示例 2.3 在albumentations库中实现的所有像素级变换 2.4 空间级转换 2.5 混合级别转换 三、让我们看看上述实现中的转换。 3.1 在专辑中实现的天气相关转换 3.2 随机雨 3.3 在相册中处理非 8 位图像 3.4 在文档…

给Go+Sciter开发的桌面客户端软件添加系统托盘图标

在桌面端软件开发中&#xff0c;系统托盘图标是提升用户体验的重要元素。托盘图标不仅能提供直观的状态反馈&#xff0c;还能让软件在后台运行时依然保持与用户的交互。通过托盘图标&#xff0c;用户可以轻松最小化软件、退出程序&#xff0c;甚至弹出通知&#xff0c;从而避免…

大模型入门到精通——使用Embedding API及搭建本地知识库(一)

使用Embedding API及搭建本地知识库 1. 基于智谱AI调用Embedding API实现词向量编码 首先&#xff0c;生成.env 文件&#xff0c;填写好智谱AI的API-key 参考&#xff1a;大模型入门到实战——基于智谱API key 调用大模型文本生成 读取本地/项目的环境变量。 find_dotenv(…