23人参与 • 2026-04-27 • Mysql
在操作之前,我们需要明确自己操作的是哪部分的数据。

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

执行成功,有一条数据被写入数据表。
![]()
insert into 表名 values (值,值...);

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

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

select *from 表名;

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





select distinct 列名 from 表名;
这里没有加distinct关键字查询出来的成绩有两个98分

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

重复的记录只保留了一条。
⚠️ 注意:在查询结果中,每一列都相同mysql才认为他们是重复的数据,也就是数据行与数据行之间,两条记录完全一致才是重复的数据。
例如:
在查询数学成绩时,加上id这一列,第一列和第三列记录,虽然数学成绩一致,但是他们的id不一致,所以distinct关键字也就不把他们当做重复的数据行。

排序规则
1.升序 asc(不指定时,默认是升序)
2.降序 desc
select 列名 from 表名 order by 列名[asc | desc];




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

语法:
select *from 表名 where 列名/表达式 运算符 条件;
| 运算符 | 说明 |
|---|---|
> | 大于 |
>= | 大于等于 |
< | 小于 |
<= | 小于等于 |
= | 等于,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 个)任意字符,_ 表示任意一个字符 |
| 运算符 | 说明 |
|---|---|
and | 多个条件必须都为 true(1),结果才是 true(1) |
or | 任意一个条件为 true(1),结果为 true(1) |
not | 条件为 true(1),结果为 false(0) |
⚠️ 注意:
例如






![]()





查询方法 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 表名 set 列名1 = 值1, 列名2 = 值2 where 条件;



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


insert into 向数据表中插入数据查询是数据库中最常用的操作,重点掌握以下内容:
select *(生产环境慎用)as 起别名ascdesc> >= < <= = !=and、or、notbetween、in、like、is nulland 优先级高于 orwhere 不能使用别名from → where → select → order by → limit
理解执行顺序可以帮助我们:
update ... set ... where ...where 会更新整张表(极度危险)delete from ... where ...order by + limit 精准删除where 会删除整张表数据null 不能使用 = 判断,要使用 is nullwhere 中不能使用 select 定义的别名and 优先级高于 ors = (当前页号 - 1) * 每页条数
select *where 的 updatewhere 的 delete先确定数据来源(from)
再过滤数据(where)
再选择字段(select)
再排序(order by)
最后限制条数(limit)
掌握这条主线,mysql 的 crud 操作基本就能熟练掌握。
到此这篇关于mysql数据库增删改查的文章就介绍到这了,更多相关mysql增删改查内容请搜索代码网以前的文章或继续浏览下面的相关文章希望大家以后多多支持代码网!
您想发表意见!!点此发布评论
版权声明:本文内容由互联网用户贡献,该文观点仅代表作者本人。本站仅提供信息存储服务,不拥有所有权,不承担相关法律责任。 如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 2386932994@qq.com 举报,一经查实将立刻删除。
发表评论