暂无图片
mysql如何获得delete语句的真实计划?
我来答
分享
暂无图片 匿名用户
mysql如何获得delete语句的真实计划?

explain analyze delete from test.rr where a=5; 

会提示如下:

<not executable by iterator executor>



请问,要获得delete的真实计划,该如何实现?

我来答
添加附件
收藏
分享
问题补充
2条回答
默认
最新
watson

在MySQL中,要获取DELETE语句的实际执行计划,可以使用EXPLAIN关键字。这将显示出MySQL如何处理DELETE语句,包括可能使用的索引、join类型等信息。

下面是一个使用EXPLAIN关键字的示例:

EXPLAIN DELETE FROM your_table WHERE your_condition;

复制

your_table替换为你的表名,your_condition替换为你的条件表达式。执行这个语句将输出DELETE操作的执行计划。

请注意,EXPLAIN并不会真正执行DELETE语句,它只是展示了如果执行该语句时MySQL会如何操作。

暂无图片 评论
暂无图片 有用 1
打赏 0
龙镇君

在MySQL中,您可以通过使用EXPLAIN关键字来获取DELETE语句的执行计划。这个命令会显示MySQL如何处理您的DELETE请求,包括它将扫描哪些索引、表以及其他相关的执行细节。

例如,如果您想要查看DELETE语句的执行计划,您可以像这样使用EXPLAIN:

EXPLAIN DELETE FROM your_table WHERE condition;
这将返回一个详细的报告,展示了DELETE操作的内部工作机制。通过分析这个报告,您可以优化您的查询,提高性能。

请记住,EXPLAIN命令通常用于SELECT、INSERT、UPDATE和DELETE语句,以便于理解它们的执行计划。

暂无图片 评论
暂无图片 有用 2
打赏 0
回答交流
Markdown


请输入正文
提交
相关推荐
之前安装的mysql已经删了 ,为什么这个服务还在?
回答 2
1)、先关掉mysql服务,卸载掉mysql,这里我就用cmd命令了:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;关掉:netstopmysql;&nbsp;&
MySQL数据库内存升高问题
回答 3
A
线上的环境下,执行optimize table z1 ;alter table z1 engine=innodb ,analyze table z1,这3个语句执行的时候,会阻塞dml吗?
回答 1
执行optimizetablez1;和altertablez1engineinnodb&nbsp;这两种操作会对表进行重建,对表结构以及表数据都会有更改,这个时候会有表级别的排它锁,阻塞其他会话对表的
table_io_waits_summary_by_index_usage 包含innodb逻辑IO读 和 物理IO读吗?
回答 2
已采纳
包含,逻辑读的fetchlatencycount较高,物理读较低,因为一次查询可能只需要一次物理读操作。
sqlyog误删了连接信息,可以找回吗?
回答 1
已采纳
不能
MySQL的审计功能是不是企业版的才能用?
回答 2
已采纳
社区版也有,但是功能比较简陋。企业版是官方推的。但是即使如此我还是推荐你用第三方数据库审计。旁路接入,减少数据库审计压力。
mysql中一个表有140W条数据,单表查询根据时间字段过滤查询,全表查询花了5.3S,根据时间索引花了12s?
回答 4
因为你是读整个表的数据,走索引当然更慢了
mysql自查询中有主键使用in和主键使用=的区别
回答 3
外表和子查询的表都是t所以我们从语句中无法看出是关联子查询还是非关联子查询
mysql的unique key为什么可以实现并发时的去重,原理是什么?
回答 1
已采纳
唯一索引上的悲观行锁来实现的吧。和普通索引的区别只是唯一索引需判断是否重复。
mysql 慢查询日志可以查到指定库名的慢日志吗?
回答 1
已采纳
不好区分。除非SQL中写了schema。table这样的。否则就是开发和运维对表比较熟悉。