MySQL中表的增删改查(下)

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
云数据库 RDS PostgreSQL,集群系列 2核4GB
简介: MySQL中表的增删改查

1、比较运算符

2、逻辑运算符

注意:1. AND的优先级高于OR,在同时使用时,需要使用小括号()包裹优先执行的部分

          2. WHERE条件可以使用表达式,但不能使用别名

如图示例:

              sql语句的执行顺序:

               第一步:取出一条记录(遍历表)

               第二步:把记录带入条件带入条件,判断是否满足

               第三步:如果条件满足,再把select指定的列取出来,并进行一些表达式运算

所以条件查询的where后面不能用别名

3、基本查询:

查询英语成绩大于70分的同学:

代码如下:

select name, english from exam_result where english > 70;

结果如下:

查询英语成绩大于语文成绩的同学:

代码如下:

select name, english, chinese from exam_result where english > chinese;

结果如下:

查询总成绩小于200的同学:

代码如下:

select name, chinese + math + english from exam_result where (chinese + math + english) < 200;

结果如下:

4、AND和OR:

查询语文成绩大于80分,且英语成绩大于80分的同学

代码如下:

select name, chinese, english from exam_result where (chinese > 80) and (english > 80);

结果如下:

查询语文成绩大于80分,或英语成绩大于80分的同学

代码如下:

select name, chinese, english from exam_result where (chinese > 80) or (english > 80);

结果如下:

注意:and优先级高于or,在使用的时候,有需要可以用括号括起来

5、范围查询

       (1) BETWEEN ... AND

       代码展示:

select * from exam_result where chinese between 80 and 90;

       结果展示:

    这里用and也可以实现

代码:

select * from exam_result where chinese >= 80 and chinese <= 90;
       (2)IN

代码如下:

select name, math from exam_result where math in(58, 59, 98, 99);

结果展示:

这里也可以用or

代码:

select name, math from exam_result where math = 58 or math = 59 or math = 98 or math = 99;

6、模糊查询:LIKE

       % 匹配任意多个(包括 0 个)字符
       _ 匹配严格的一个任意字符

代码展示:

select name from exam_result where name like '孙%';

结果如下:

代码展示:

select name from exam_result where name like '孙_';

结果如下:

注意:%也可以这样使用:%孙,就是以“孙”结尾的字段;%孙%,只要包含“孙”的字段

       _也可以这样使用:_孙,就是前面只有一个字符,结尾带“孙”的字段,下划线_也可以使用多个。

7、NULL的查询:IS [NOT] NULL        

判断表里面某个列是否为NULL,或者不是NULL

代码如下:

select name from exam_result where name is not null;

结果如下:

代码如下:

select name from exam_result where name is NULL;

结果如下:

8、分页查询:LIMIT

语法:

-- 起始下标为 0

-- 从 0 开始,筛选 n 条结果

SELECT ... FROM table_name [WHERE ...] [ORDER BY ...] LIMIT n;

-- 从 s 开始,筛选 n 条结果

SELECT ... FROM table_name [WHERE ...] [ORDER BY ...] LIMIT s, n;

-- 从 s 开始,筛选 n 条结果,比第二种用法更明确,建议使用

SELECT ... FROM table_name [WHERE ...] [ORDER BY ...] LIMIT n OFFSET s;

 

从 0 开始,筛选 3 条结果

代码展示:

select * from exam_result limit 3;

结果如下:

从0开始,筛选3条记录,按 id 进行分页,顺序

代码展示:

select * from exam_result limit 3;

结果如下:

从3开始,筛选3条记录,按id进行分页,顺序

代码展示:

select * from exam_result order by id limit 3 offset 3;

结果如下:


四、修改(Update)

 

语法:

UPDATE table_name SET column = expr [, column = expr ...]
[WHERE ...] [ORDER BY ...] [LIMIT ...]

 

案例:

 

-- 将孙悟空同学的数学成绩变更为 80 分

语法:

update 表名 set 要修改的列名 = 要修改的值 where 列名 = 要指定修改的列里的值

代码如下:

mysql> update exam_result set math = 80 where name = '孙悟空';

结果如下:

-- 将曹孟德同学的数学成绩变更为 60 分,语文成绩变更为 70 分

代码如下:

update exam_result set math = 60, chinese = 70 where name = '曹孟德';

结果如下:

-- 将总成绩倒数前三的 3 位同学的数学成绩加上 30 分

代码如下:

结果如下:

-- 将所有同学的语文成绩更新为原来的 2 倍

代码如下:

update exam_result set chinese = chinese * 2;

结果如下:


五、删除(Delete)

语法:

DELETE FROM table_name [WHERE ...] [ORDER BY ...] [LIMIT ...]

 

案例:

 

-- 删除孙悟空同学的考试成绩

代码如下:

delete from exam_result where name = '孙悟空';

结果如下:

-- 删除整张表数据

准备一张表,如下:

代码如下:

delete from for_delete;

结果如下:


六、内容重点总结

新增

查询

修改

删除


都看到这了,点个赞再走吧,谢谢谢谢谢!!!

相关实践学习
如何快速连接云数据库RDS MySQL
本场景介绍如何通过阿里云数据管理服务DMS快速连接云数据库RDS MySQL,然后进行数据表的CRUD操作。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助 &nbsp; &nbsp; 相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
相关文章
|
5月前
|
SQL 关系型数据库 MySQL
mysql 简单的sql语句,入门级增删改查
介绍MySQL中的基本SQL语句,包括数据的增删改查操作,使用示例和简单的数据表进行演示。
mysql 简单的sql语句,入门级增删改查
|
9月前
|
SQL 关系型数据库 MySQL
【MySQL】基本查询(表的增删改查)-- 详解(上)
【MySQL】基本查询(表的增删改查)-- 详解(上)
|
9天前
|
关系型数据库 MySQL 数据库连接
Unity连接Mysql数据库 增 删 改 查
在 Unity 中连接 MySQL 数据库,需使用 MySQL Connector/NET 作为数据库连接驱动,通过提供服务器地址、端口、用户名和密码等信息建立 TCP/IP 连接。代码示例展示了如何创建连接对象并执行增删改查操作,确保数据交互的实现。测试代码中,通过 `MySqlConnection` 类连接数据库,并使用 `MySqlCommand` 执行 SQL 语句,实现数据的查询、插入、删除和更新功能。
|
2月前
|
SQL 存储 关系型数据库
MySQL/SqlServer跨服务器增删改查(CRUD)的一种方法
通过上述方法,MySQL和SQL Server均能够实现跨服务器的增删改查操作。MySQL通过联邦存储引擎提供了直接的跨服务器表访问,而SQL Server通过链接服务器和分布式查询实现了灵活的跨服务器数据操作。这些技术为分布式数据库管理提供了强大的支持,能够满足复杂的数据操作需求。
102 12
|
3月前
|
关系型数据库 MySQL Java
Servlet+MySQL增删改查 原文出自[易百教程] 转载请保留原文链接: https://www.yiibai.com/geek/1391
对于任何项目开发,创建,读取,更新和删除(CRUD)记录操作是应用程序的一个最重要部分。
102 20
|
7月前
|
JavaScript 关系型数据库 MySQL
创建nodejs项目并接入mysql,完成用户相关的增删改查的详细操作
创建nodejs项目并接入mysql,完成用户相关的增删改查的详细操作
95 0
|
4月前
|
关系型数据库 MySQL
MySQL表的增删改查(基础篇详细详解)
MySQL表的增删改查(基础篇详细详解)
78 5
|
4月前
|
关系型数据库 MySQL 数据库
Mysql学习笔记(四):Python与Mysql交互--实现增删改查
如何使用Python与MySQL数据库进行交互,实现增删改查等基本操作的教程。
93 1
|
4月前
|
关系型数据库 MySQL 数据库
mysql的增删改查
本文介绍了MySQL数据库中进行增删改查操作的基本语法和注意事项,包括如何添加、修改和删除数据。
128 2
|
6月前
|
JavaScript 关系型数据库 MySQL
node连接mysql,并实现增删改查功能
【8月更文挑战第26天】node连接mysql,并实现增删改查功能
183 3