gpt4 book ai didi

mysql - EXPLAIN 中的顺序是什么意思?

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

8.2.2. EXPLAIN Output Format基于以下 SQL 查询的连续优化,给出了几个 EXPLAIN 示例:

EXPLAIN SELECT tt.TicketNumber, tt.TimeIn,
tt.ProjectReference, tt.EstimatedShipDate,
tt.ActualShipDate, tt.ClientID,
tt.ServiceCodes, tt.RepetitiveID,
tt.CurrentProcess, tt.CurrentDPPerson,
tt.RecordVolume, tt.DPPrinted, et.COUNTRY,
et_1.COUNTRY, do.CUSTNAME
FROM tt, et, et AS et_1, do
WHERE tt.SubmitTime IS NULL
AND tt.ActualPC = et.EMPLOYID
AND tt.AssignedPC = et_1.EMPLOYID
AND tt.ClientID = do.CUSTNMBR;

这是他们给出的第一个 EXPLAIN:

table type possible_keys key  key_len ref  rows  Extra
et ALL PRIMARY NULL NULL NULL 74
do ALL PRIMARY NULL NULL NULL 2135
et_1 ALL PRIMARY NULL NULL NULL 74
tt ALL AssignedPC, NULL NULL NULL 3872
ClientID,
ActualPC
Range checked for each record (index map: 0x23)

这是第二个(在进行优化之后):

table type   possible_keys key     key_len ref         rows    Extra
tt ALL AssignedPC, NULL NULL NULL 3872 Using
ClientID, where
ActualPC
do ALL PRIMARY NULL NULL NULL 2135
Range checked for each record (index map: 0x1)
et_1 ALL PRIMARY NULL NULL NULL 74
Range checked for each record (index map: 0x1)
et eq_ref PRIMARY PRIMARY 15 tt.ActualPC 1

我的问题是……订单代表什么?在第一个 EXPLAIN 中,et 列位于顶部。在第二个它会在底部。这有什么特别的意义吗?是否可以从中得出任何推论?

最佳答案

根据MySQL reference manual :

EXPLAIN returns a row of information for each table used in the SELECT statement. 
It lists the tables in the output in the order that MySQL would read them while
processing the statement

所以我读到是说,在版本 1 中,et 是第一个读取的表,但在修改之后,直到最后阶段才需要它。

关于mysql - EXPLAIN 中的顺序是什么意思?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19434585/

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