MySQL数据表记录删操作

删除操作

作用删除表里的记录行(都是整行整行的删除的**)**

1.单表的删除

语法:

sql 复制代码
delete from 表名 where 要删除的记录筛选条件;

案例:删除员工编号大于203的员工信息

sql 复制代码
delete from employees where employee_id>203;

2.多表的删除

语法:

sql 复制代码
delete 别名1,别名2

from 表1 别名1,表2 别名2

where 连接条件 and 筛选条件;

注意:如果只删表1的就只写别名1,如果两个表的记录都删就别名1,别名2)

sql 复制代码
delete 别名1,别名2
from 表1 别名1
[连接类型] join 表2 别名2
on 连接条件
where 筛选条件;
案例:删除任波涛的年龄信息
delete a from students s
inner join ages a
on s.age_id = a.id
where s.name='任波涛';

3.整表记录全部删除

不能加where条件

sql 复制代码
truncate table 表名;

4.delete和truncate区别

  1. delete可以加where条件
  2. truncate删除的效率高一些
  3. 假如要删除的表上有自增长字段,如果用delete删除,再插入数据,自增长从断点值开始,用truncate删除,再插入数据,从1开始;
  4. truncate删除没有返回值,delete删除有返回值
  5. truncate删除不能回滚,delete删除可以回滚
相关推荐
AllData公司负责人11 分钟前
AllData数据中台-数据同步平台集成开源项目Seatunnel-Web,完成Mysql到Doris同步流程
数据库·mysql·开源
Mr.Entropy18 分钟前
数据库读写分离介绍
数据库
Codeking__21 分钟前
Redis的value类型及编码方式介绍——string
数据库·redis·缓存
ShuiShenHuoLe40 分钟前
maven配置阿里源
java·数据库·maven
码农爱学习1 小时前
C语言结构体对齐是怎么计算
java·c语言·数据库
小杨同学491 小时前
C 语言实战:堆内存存储字符串 + 多种递归方案计算字符串长度
数据库·后端·算法
小码编匠1 小时前
完美替代 Navicat,一款开源免费、集成了 AIGC 能力的多数据库客户端工具!
数据库·后端·aigc
linuxxx1101 小时前
正则匹配应用小案例
数据库·正则表达式
末日汐1 小时前
磁盘与文件系统
linux·运维·数据库
win x1 小时前
Redis集群
java·数据库·redis