gpt4 book ai didi

当表中根本没有数据时,MySQL 解释在 "rows"中显示 1 行

转载 作者:行者123 更新时间:2023-11-29 06:00:16 25 4
gpt4 key购买 nike

我有一张 table :

CREATE TABLE `test` (
`pk` INT(11) NOT NULL AUTO_INCREMENT,
`index_col` INT(11) NULL DEFAULT '0',
PRIMARY KEY (`pk`)
)
ENGINE=InnoDB
AUTO_INCREMENT=5
;

表中根本没有数据。

我有一个问题:

explain select * from test;

在解释中显示:

行数:1

过滤:100

如果表中根本没有数据,它从哪里获得那 1 行?

最佳答案

MySQL 中,EXPLAIN 返回查询的执行计划而不是实际结果。这就是documentation说:

When EXPLAIN is used with an explainable statement, MySQL displays information from the optimizer about the statement execution plan. That is, MySQL explains how it would process the statement, including information about how tables are joined and in which order.

执行计划以表格格式表示,输出中的 1 实际上是执行计划的行,而不是查询输出。此输出显示每个表 1 行,因此,如果您的查询中有 1 个以上的表,无论实际 SELECT 查询的结果如何,您都会在输出中看到 2 行。

Here's EXPLAIN输出格式的详细解释。

关于当表中根本没有数据时,MySQL 解释在 "rows"中显示 1 行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45645066/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com