数据库高级教程 01

简介: 数据库高级教程 01

大家好,我是阿娟,一位从业 7 年的软件测试程序媛,上一节介绍了数据库基础教程-八种常用语法,今天给大家分享数据库高阶教程第一节


  1. SQL  LIMIT 子句
  2. SQL LIKE 操作符
  3. SQL 通配符
  4. SQL IN 操作符
  5. SQL BETWEEN 操作符
  6. SQL 别名


一、LIMIT子句


Student表,包含字段snum、sname、birthday、sex


一)语法


1、SELECT 字段名(s) FROM 表名 LIMIT 数值;


2、SELECT 字段名(s)FROM 表名 LIMIT m,n;

表示从第m+1位的数据开始取,取n个数


3、LIMIT 子句和OFFSET组合使用

SELECT 字段名(s)FROM 表名 LIMIT m OFFSET n;

表示从第n+1位的数据开始取,取m个数


二)举例


1、展示查询结果的前三条数据


SELECT * FROM Student LIMIT 3;

执行结果如下,查询出当前Student表的前三条数据



2、查询出Studen表中第2,3,4条记录


SELECT * FROM Student LIMIT 1,3;

执行结果如下:


3、查询出表中第2,3,4条记录


SELECT * FROM Student LIMIT 3 OFFSET 1;

执行结果如下:


二、SQL LIKE 操作符


Student表,包含字段snum、sname、birthday、sex

用于在 WHERE 子句中搜索字段中的指定模式,例如以xx字符开始的数据,以xx字符结束的数据等。


一)语法


1、查询 以xx 开头的数据

SELECT 字段名(s) FROM 表名 WHERE 列名 LIKE'xx%';


2、查询以 xx结束的数据

SELECT 字段名(s) FROM 表名 WHERE 列名 LIKE '%xx';


3、查询包含xx的数据

SELECT 字段名(s) FROM 表名 WHERE 列名 LIKE'%xx%';


4、查看不包含xx的数据

SELECT 字段名(s) FROM 表名 WHERE 列名NOT  LIKE'%xx%';


二)举例


1、查询Student表中 sname 以张开头的数据


SELECT * FROM Student WHERE sname LIKE '张%';

执行结果如下,返回一条数据


2、查询Student表 sname 以娟结尾的数据


SELECT * FROM Student WHERE sname LIKE '%娟';

执行结果如下:


3、查询Student表中sname 包含三的数据


SELECT * FROM Student WHERE sname LIKE '%三%';

执行结果如下:


4、查询Student表中sname 不包含三的数据


SELECT * FROM Student WHERE sname NOT LIKE '%三%';

执行结果如下:


三、SQL 通配符


Student表,包含字段snum、sname、birthday、sex

通配符可用于替代字符串中的任何其他字符,常和LIKE子句组合。

SQL用到的通配符如下:

%:替代 0 个或多个字符

-:替代一个字符

[charlist]:字符列中的任何单一字符

[^charlist]或[!charlist]:不在字符列中的任何单一字符


一)举例


1、查询Student表中sname 不包含三的数据


SELECT * FROM Student WHERE sname NOT LIKE '%三%';

执行结果如下:


2、查询Student表中sname中间包含三的数据


SELECT * FROM Student WHERE sname LIKE '_三_';

执行结果如下,返回一条数据


3、查询Studen表中sname中包含字符三的数据


SELECT * FROM Student WHERE sname REGEXP '[三]';

执行结果如下,返回一条数据


四、SQL IN 操作符


Student表,包含字段snum、sname、birthday、sex

Score表,包含字段snum、classnum、grade

允许在 WHERE 子句中规定多个条件值。


一)语法


1、符合多个条件

SELECT 字段(s)  FROM 表名 WHERE 字段 IN (值1,值2,...);


2、不符合多个条件

SELECT 字段(s) FROM 表名 WHERE 字段 NOT IN (值1,值2,...);


二)举例


1、查询Score表中 grade中包含80,85的数据


SELECT * FROM Score WHERE grade IN (80,85);

执行结果如下:


2、查询Score表中grade中不包含80,85的数据


SELECT * FROM Score WHERE grade NOT IN (80,85);

执行结果如下:


五、SQL BETWEEN 操作符


Student表,包含字段snum、sname、birthday、sex

Score表,包含字段snum、classnum、grade

查询条件筛选:选取介于两个值之间的数据范围内的值。


一)语法


1、在某个取值范围内

SELECT 字段(s) FROM 表名 WHERE 字段 BETWEEN 值1 AND 值2;


2、不在某个取值范围内

SELECT 字段(s) FROM 表名 WHERE 字段 NOT  BETWEEN 值1 AND 值2;


二)举例


1、查询Score表grade不在(80,85)的数据


SELECT * FROM Score WHERE grade BETWEEN 80 AND 85;

 执行结果如下,取值包含80和85


2、查询Score表grade不在(80,85)的数据

SELECT * FROM Score WHERE grade NOT BETWEEN 80 AND 85;

执行结果如下,取值不包含80和85


六、SQL 别名


Student表,包含字段snum、sname、birthday、sex

为表名称或列名称指定别名,使用别名的几个场景:


  • 在查询中涉及超过一个表
  • 在查询中使用了函数
  • 列名称很长或者可读性差
  • 需要把两个列或者多个列结合在一起


一)语法


1、列别名

SELECT 列名 AS 别名 FROM 表名;


2、表别名

SELECT 列名(s) FROM 表名 AS 表别名;


二)举例


1、列sname的 SQL别名


SELECT sname AS name FROM Student;

执行结果如下:


2、表的 SQL 别名语法


SELECT sname FROM Student AS Student1;


以上就是今天的分享,谢谢你的阅读呀 ~~

相关文章
|
2月前
|
缓存 Java 应用服务中间件
Spring Boot配置优化:Tomcat+数据库+缓存+日志,全场景教程
本文详解Spring Boot十大核心配置优化技巧,涵盖Tomcat连接池、数据库连接池、Jackson时区、日志管理、缓存策略、异步线程池等关键配置,结合代码示例与通俗解释,助你轻松掌握高并发场景下的性能调优方法,适用于实际项目落地。
541 5
|
监控 Java 应用服务中间件
达梦数据库DEM监控部署教程分享
达梦数据库DEM监控部署教程分享
912 2
|
10月前
|
关系型数据库 MySQL API
新手教程:数据库操作(使用PDO或MySQLi扩展)
本文为新手介绍如何使用PDO和MySQLi扩展连接与操作MySQL数据库。PDO更现代灵活,支持多种数据库,适合大多数应用;MySQLi提供面向过程和面向对象两种API,适合直接控制数据库操作。教程涵盖安装配置、创建连接、执行查询(查询、插入、更新、删除)及错误处理等内容。希望这篇教程能帮助你快速上手PHP中的数据库操作!
333 32
|
9月前
|
存储 关系型数据库 分布式数据库
PolarDB 开源基础教程系列 8 数据库生态
PolarDB是一款开源的云原生分布式数据库,源自阿里云商业产品。为降低使用门槛,PolarDB携手伙伴打造了完整的开源生态,涵盖操作系统、芯片、存储、集成管控、监控、审计、开发者工具、数据同步、超融合计算、ISV软件、开源插件、人才培养、社区合作及大型用户合作等领域。通过这些合作伙伴,PolarDB提供了丰富的功能和服务,支持多种硬件和软件环境,满足不同用户的需求。更多信息请访问[PolarDB开源官方网站](https://openpolardb.com/home)。
471 4
|
小程序 数据库
【微信小程序-原生开发】实用教程10 - 动态的新增、修改、删除(含微信云数据库的新增、修改、删除,表单弹窗、确认弹窗、日期选择器、单行输入框、多行输入框、滑动组件的使用)
【微信小程序-原生开发】实用教程10 - 动态的新增、修改、删除(含微信云数据库的新增、修改、删除,表单弹窗、确认弹窗、日期选择器、单行输入框、多行输入框、滑动组件的使用)
744 0
|
tengine 关系型数据库 MySQL
Tengine、Nginx安装MySQL数据库命令教程
本指南详细介绍了在Linux系统上安装与配置MySQL数据库的步骤。首先通过下载并安装MySQL社区版本,接着启动MySQL服务,使用`systemctl start mysqld.service`命令。若启动失败,可尝试使用`sudo /etc/init.d/mysqld start`。利用`systemctl status mysqld.service`检查MySQL的服务状态,确保其处于运行中。通过日志文件获取初始密码,使用该密码登录数据库,并按要求更改初始密码以增强安全性。随后创建一个名为`tengine`的数据库,最后验证数据库创建是否成功以及完成整个设置流程。
|
存储 SQL 关系型数据库
【入门级教程】MySQL:从零开始的数据库之旅
本教程面向零基础用户,采用通俗易懂的语言和丰富的示例,帮助你快速掌握MySQL的基础知识和操作技巧。内容涵盖SQL语言基础(SELECT、INSERT、UPDATE、DELETE等常用语句)、使用索引提高查询效率、存储过程等。适合学生、开发者及数据库爱好者。
550 0
【入门级教程】MySQL:从零开始的数据库之旅
|
存储 机器学习/深度学习 监控
南大通用GBase 8s数据库onbar基础使用教程
数据备份与恢复是确保数据安全和业务连续性的关键。onbar作为GBase 8s数据库的备份工具,需配合存储管理器使用,通过配置BAR_BSALIB_PATH等参数,实现数据的备份与恢复。本文详细介绍了onbar的配置、备份、恢复及监控流程,帮助数据库管理员构建高效的数据保护方案。
|
SQL NoSQL MongoDB
一款基于分布式文件存储的数据库MongoDB的介绍及基本使用教程
一款基于分布式文件存储的数据库MongoDB的介绍及基本使用教程
365 0
|
存储 NoSQL API
.NET NoSQL 嵌入式数据库 LiteDB 使用教程
.NET NoSQL 嵌入式数据库 LiteDB 使用教程~
505 0