删除语句
语法:方式一
delete from 表名 where 筛选条件(删除整行)
单表的删除
1. delete from 表名 where 筛选条件
案例:删除手机号以9结尾的女神信息 delete from beauty where phone like '%9';
2. 多表的删除
①sql92语法:delete 别名 from 表1 别名,表2 别名
where 连接条件
and 筛选条件
②sql99语法
delete 表1的别名或表2的别名 from 表1 别名 inner/left/right join 表2 别名 on 连接条件 where筛选条件
删除张无忌的女朋友信息 delete b from beauty b inner join boys bo on b.boyfriend_id=bo.id where bo.boyname='张无忌';
案例3.删除黄晓明的信息及其女朋友的信息 Delete bo, b FROM beauty b INNER JOIN boys bo ON bo.id=b.boyfriend_id WHERE bo.boyname='黄晓明';
方式二: truncate table 表名
案例:将魅力值>100的男神信息删除 Truncate table boys;
delete pk truncate
1. delete 可以加where 条件 truncate 不能加。
2. truncate 删除整个表,效率高。
3. 假如要删除的表中有自增长列,使用delete删除后,再插入数据,自增长列的值从断点开始,而 truncate删除后,再插入数据自增长列的值从1开始。
4. truncate 删除没有返回值,delete删除有返回值。
5. truncate 删除不能回滚,delete删除后可以回滚。