方式一:delete
单表删除
delete from 表名 where 筛选条件
多表删除
92语法
delete 表一的别名,表二的别名
from 表一 别名,表二 别名
where 连接条件 and 筛选条件
举例:删除张无忌女朋友
# 删除一个表中的数据,就在delete 后面加别名
delete be
from boys b ,beauty be
where b.id = be.boyfriend_id and b.boyName = "张无忌";
sql 99 语法
delete 表一 别名,表二 别名
from 表一 别名
left |right | inner join 表二 别名 on 连接条件
where 筛选条件
举例
delete be,b
from beauty be inner join boys b on be.boyfriend_id = b.id
where b.id = 4
方式二:truncate
truncate table 表名;
两者区别
- delete 加where,truncate不加where
- truncate效率高一点点
- truncate 时,自增id会重置
- truncate删除没有返回值,delete 有返回值
- truncate 无法回滚 delete 可以回滚