MySQL クエリの「インデックスの使用; 一時的な使用; ファイルソートの使用」エラーへの対処
MySQL クエリを使用する際の一般的な懸念事項は次のとおりです。 「インデックスを使用しています。一時的なものを使用しています。ファイルソートを使用しています。」という警告が表示されます。このメッセージは、MySQL が一時テーブルとファイルソート操作に依存しており、パフォーマンスに影響を与える可能性があることを示しています。
この特定のケースでは、クエリに次の 2 つのパフォーマンスの問題があります:
これらの問題を解決するには:
クエリの最適化されたバージョンは次のとおりです:
EXPLAIN SELECT el.object_id, leo.object_desc, COUNT(el.object_id) as count_rows FROM event_log el LEFT JOIN lookup_event_objects leo ON leo.object_id = el.object_id GROUP BY el.object_id ORDER BY count_rows DESC, leo.object_desc ASC
この改訂されたクエリでは、一時テーブルとファイル並べ替え操作の使用を排除することで、パフォーマンスが向上します。
以上が「インデックスの使用、一時的な使用、ファイルソートの使用」エラーで MySQL クエリを最適化する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。