sql删除语句,where后面的条件为什么要按照主键作为删除条件? 是不是这样速度更快?
sql删除语句,where后面的条件为什么要按照主键作为删除条件?是不是这样速度更快?因为主键上有索引,不按照主键作为条件索引就失效了吗?不是自动生效吗?谢谢不是说一定是...
sql删除语句,where后面的条件为什么要按照主键作为删除条件?
是不是这样速度更快?因为主键上有索引,不按照主键作为条件索引就失效了吗?不是自动生效吗?
谢谢
不是说一定是按照主键,是不是不安主键删除索引就没有作用了呢? 展开
是不是这样速度更快?因为主键上有索引,不按照主键作为条件索引就失效了吗?不是自动生效吗?
谢谢
不是说一定是按照主键,是不是不安主键删除索引就没有作用了呢? 展开
4个回答
展开全部
你把
SELECT * FROM 表 WHERE ...
与
DELETE FROM 表 WHERE ...
等同起来看。
其实 WHERE 处理的机制是一样的
SELECT * FROM 表 WHERE ... 就是你指定好条件, 把指定条件的数据,显示出来给你看
DELETE FROM 表 WHERE ... 就是你指定好条件, 把指定条件的数据, 删除了。
sql删除语句,where后面的条件为什么要按照主键作为删除条件?
这个主要是怕避免误操作。属于 编程习惯问题。
因为你按照主键作为删除条件,那么通常情况下,一次只删除一条数据。
如果发现删错了,恢复起来,比较容易。
如果是 非主键作为删除条件的,那么一次会删除多条记录。
如果出错了,恢复起来,就有点麻烦。
至于:是不是不安主键删除索引就没有作用了呢?
这个和 SELECT 的逻辑一样
比如你有一个表 学生
有 学号,姓名,性别,年龄,班级 这几个字段
其中学号是主键, 班机上面有索引。
那么你 DELETE FROM 学生 WHERE 班级 = ... 还是有索引可用的。
SELECT * FROM 表 WHERE ...
与
DELETE FROM 表 WHERE ...
等同起来看。
其实 WHERE 处理的机制是一样的
SELECT * FROM 表 WHERE ... 就是你指定好条件, 把指定条件的数据,显示出来给你看
DELETE FROM 表 WHERE ... 就是你指定好条件, 把指定条件的数据, 删除了。
sql删除语句,where后面的条件为什么要按照主键作为删除条件?
这个主要是怕避免误操作。属于 编程习惯问题。
因为你按照主键作为删除条件,那么通常情况下,一次只删除一条数据。
如果发现删错了,恢复起来,比较容易。
如果是 非主键作为删除条件的,那么一次会删除多条记录。
如果出错了,恢复起来,就有点麻烦。
至于:是不是不安主键删除索引就没有作用了呢?
这个和 SELECT 的逻辑一样
比如你有一个表 学生
有 学号,姓名,性别,年龄,班级 这几个字段
其中学号是主键, 班机上面有索引。
那么你 DELETE FROM 学生 WHERE 班级 = ... 还是有索引可用的。
展开全部
没有这样的说法啊,where后面可以用任何条件,不一定要主键。
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
索引只是可以加快速度而已,删除时不一定需要用到索引,只在确保删除准备的前提下可以考虑用索引加快速度
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
delete from user_role
where role_id =
(select role_id from user,role
where role_id=user_role.role_id
and user.user_id=user_role.user_id
and user.division!=role.division)
and user_id=
(select user_id from user,role
where role_id=user_role.role_id
and user.user_id=user_role.user_id
and user.division!=role.division)
where role_id =
(select role_id from user,role
where role_id=user_role.role_id
and user.user_id=user_role.user_id
and user.division!=role.division)
and user_id=
(select user_id from user,role
where role_id=user_role.role_id
and user.user_id=user_role.user_id
and user.division!=role.division)
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询