Mysql

关注公众号 jb51net

关闭
首页 > 数据库 > Mysql > MySQL增删改查

MySQL数据库增删改查超完整示例图(新手入门必看)

作者:念越

MySQL中的增删改查操作是实现数据库数据管理的重要手段,通过对数据库中数据的增加、删除、修改和查询,我们可以对数据进行有效的管理和利用,这篇文章主要介绍了MySQL数据库增删改查的相关资料,需要的朋友可以参考下

在操作之前,我们需要明确自己操作的是哪部分的数据。

一、新增(create)

1.单行数据

insert into [(字段1,字段2)] values (值,值);
insert into student(id,name) values (1,'张三');

执行成功,有一条数据被写入数据表。

insert into 表名 values (值,值...);

2.指定列插入

insert into 表名(列名) values (值);

3.多行插入

insert into 表名[(列名...)] values (值),(值)...

二、查询(Retrieve)

1.全列查询

 select *from 表名;

⚠️ 注意:这个一个非常危险的操作,因为在生产环境中,一个表中的数据量可能会很多很多,当一个查询开始的时候,磁盘会开销,网络会开销,这些都是非常紧缺的资源。这一条语句开始执行的时候,可能会吃光服务器所有资源,其他程序或数据库操作就要等待当前SQL语句执行完以后才能继续执行。

2.指定列查询

select 列名[,列名]...from 表名;

指定查询id,姓名,和语文成绩。

3.去重:DISTINCT

select distinct 列名 from 表名;

这里没有加distinct关键字查询出来的成绩有两个98分

加上distinct关键字查询出来的记录如下

重复的记录只保留了一条。

⚠️ 注意:在查询结果中,每一列都相同MYSQL才认为他们是重复的数据,也就是数据行与数据行之间,两条记录完全一致才是重复的数据。
例如:

在查询数学成绩时,加上id这一列,第一列和第三列记录,虽然数学成绩一致,但是他们的id不一致,所以distinct关键字也就不把他们当做重复的数据行。

4.排序:ORDER BY

排序规则

1.升序 ASC(不指定时,默认是升序)
2.降序 DESC

select 列名 from 表名 order by 列名[ASC | DESC];

不论什么值和NULL进行运算,返回值都是NULL
NULL始终被判定为FALSE
NULL的值不是我们以前学过的其他编程语言中的0,在MYSQL中它就是NULL

5.条件查询:WHERE

语法:

select *from 表名 where 列名/表达式 运算符 条件;

5.1 运算符说明表

运算符说明
>大于
>=大于等于
<小于
<=小于等于
=等于,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是 NULL
IS NOT NULL不是 NULL
LIKE模糊匹配,% 表示任意多个(包括 0 个)任意字符,_ 表示任意一个字符

5.5逻辑运算符说明表

运算符说明
AND多个条件必须都为 TRUE(1),结果才是 TRUE(1)
OR任意一个条件为 TRUE(1),结果为 TRUE(1)
NOT条件为 TRUE(1),结果为 FALSE(0)

⚠️ 注意:

  1. WHERE条件可以使用表达式,但不能使用别名。
  2. AND的优先级高于OR,在同时使用时,需要使用小括号()包裹优先执行的部分

例如

查询方法 1.用OR把所有的条件关联起来
用IN(集合)

--起始下标为0
--从0开始,筛选n条结果
select....from 表名 [where...] [order by...] limit n;

--从s开始,筛选n条结果
select....from 表名 [where...] [order by...] limit s, n;

⚠️ 注意:如果起始位置超过了整个结果集的范围,也是可以执行的,只不过是一个空集

--从s开始,筛选n条结果,比第二种用法更明确,推荐使用
--offset偏移量,也就是从哪开始的意思
select....from 表名 [where...] [order by...] limit n offset s;

⚠️ 注意:s = (当前页号-1)*每页显示的记录数

三、修改(Update)

update  表名
set 列名1 = 值1, 列名2 = 值2
where  条件;

四、删除(Delete)

delete from 表名 [where ...] [order by ...] [limit...]

五、文章知识总结

一、Create(新增)

二、Retrieve(查询)

查询是数据库中最常用的操作,重点掌握以下内容:

基础查询

表达式查询

DISTINCT 去重

ORDER BY 排序

WHERE 条件过滤(重点)

MySQL 执行顺序(高频考点)

FROM → WHERE → SELECT → ORDER BY → LIMIT

理解执行顺序可以帮助我们:

三、Update(修改)

四、Delete(删除)

高频易错点总结

  1. NULL 不能使用 = 判断,要使用 IS NULL
  2. WHERE 中不能使用 SELECT 定义的别名
  3. AND 优先级高于 OR
  4. 分页公式:

s = (当前页号 - 1) * 每页条数

  1. 生产环境慎用:
    • SELECT *
    • 不带 WHEREUPDATE
    • 不带 WHEREDELETE

一句话总结

先确定数据来源(FROM)
再过滤数据(WHERE)
再选择字段(SELECT)
再排序(ORDER BY)
最后限制条数(LIMIT)

掌握这条主线,MySQL 的 CRUD 操作基本就能熟练掌握。

到此这篇关于MySQL数据库增删改查的文章就介绍到这了,更多相关MySQL增删改查内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

您可能感兴趣的文章:
阅读全文