美文网首页
DML语言-删除语句

DML语言-删除语句

作者: 晓晓桑 | 来源:发表于2020-08-17 15:16 被阅读0次

删除语句

/*
方式一:delete
语法:
delete from 表名
where 筛选条件; -- 删除的是整行

delete from 表名; -- 整个表都删了

1.单表的删除
delete from 表名
where 筛选条件; -- 删除的是整行

2.多表的删除
sql192:
delete 表1别名 (删哪个就写谁的别名,如果都删那么都写)
from 表1 别名 ,表2 别名
where 连接条件
and 筛选条件;

sql199:
delete 表1别名 (删哪个就写谁的别名,如果都删那么都写)
FROM 表1 别名
inner|left|right join 表2 别名
on 连接条件
where 筛选条件;

方式二:truncate
语法:truncate table 表名; --整个表都删了
不能加where

*/

方式一:delete

1.单表的删除

案例1:删除手机号以9结尾的女神信息

DELETE FROM beauty
WHERE phone LIKE '%9';

2.多表的删除

案例1:删除张无忌的女朋友的信息

DELETE b
FROM beauty b
INNER JOIN boys bo
ON b.boyfriend_id=bo.id
WHERE bo.boyName='张无忌';

案例2:删除黄晓明的信息以及他女朋友的信息

DELETE b,bo
FROM beauty b
INNER JOIN boys bo
ON b.boyfriend_id=bo.id
WHERE bo.boyName='黄晓';

方式一:truncate语句:不允许有where

案例 将魅力值>100的男神信息删除

TRUNCATE TABLE boys; -- 清空数据。删除表中所有数据,效率高

DELETE pk TRUNCATE 【面试题】

-- 1.delete可以加where条件, 不能加
-- 2.truncate删除,效率高一点
-- 3.假如要删除的表中有子增长列,如果用delete删除后再插入数据,自增长列的值从断点开始,而truncate删除后再插入数据,自增长列的值从1开始。
-- 4.truncate删除没有返回值,delete有返回值
-- 5.truncate删除不能回滚,delete删除可以回滚。

相关文章

网友评论

      本文标题:DML语言-删除语句

      本文链接:https://www.haomeiwen.com/subject/zmwwrktx.html