私は、MySQLサーバのバージョン5.5.14を使用して、今私が説明コマンドを使用して、この単純なSQLクエリしようとしています:mySQL command Explain ignore LIMIT?
EXPLAIN SELECT id, name, thumb FROM `twitter_profiles` LIMIT 10;
をし、それが私にこの結果を示しています。それはスキャンし、なぜ私の質問がある
+----+-------------+-------+------+---------------+------+---------+------+-------+-------+
| id | select_type | table | type | possible_keys | key | key_len | ref | rows | Extra |
+----+-------------+-------+------+---------------+------+---------+------+-------+-------+
| 1 | SIMPLE | tp | ALL | NULL | NULL | NULL | NULL | 40823 | |
+----+-------------+-------+------+---------------+------+---------+------+-------+-------+
1 row in set (0.02 sec)
を私はLIMIT句で指定した最初の10行を取る代わりに全体のテーブルですか?
事前にアドバイスをいただきありがとうございます。ここ
乾杯、
ヤクブ
@エヴィーアハですが、それはあくまで見積もりプロセスです。面白いことに、mysqlは10行だけを取るでしょう、それは本当ですか? –
はいです。:) –
@Jakub通常の場合であるORDER BY句を追加しない限り(そうでなければ、10行はランダムでも確定的でもありません)。最終的にクライアントに送信されない場合でも、一致するすべての行を検索する必要があります。 –