1
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;
這裏的第一個解釋他們給:
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
我的問題是......該命令代表什麼?在第一個解釋中,et
列在最上面。在第二個它將在底部。這有什麼特別的意義嗎?有沒有可以從中得出任何推論?
我只是從http://dev.mysql.com/doc/refman/5.0/en/explain-output.html複製/粘貼查詢。而且我沒有詢問ORDER BY - 我在問爲什麼EXPLAIN按特定順序返回列。 – neubert