18.2.17 Make sure your indexes are being usedThis is NOT the latest copy of this book; click here for the latest version.
When using EXPLAIN, MySQL will tell you what indexes were available to help it perform its query. As mentioned at the start of this chapter, optimisation is the process of improving your code, and may well not be perfect - the MySQL query optimiser tries its best to get the most optimised version of your query, but sometimes it does slip up and fail to use an index.
If this happens, you can provide a hint to MySQL by using the USE INDEX clause - you can specify which fields you would like MySQL to use, and it will honour that.
For example:
SELECT * FROM mytable USE INDEX (Name) WHERE Name = 'Joe' ;
Naturally MySQL would not fail to optimise that query properly as it is so simple, but you get the idea.
|
Want to see this stuff in print? PHP in a Nutshell takes the core topics covered here, adds in thousands of edits from the editorial team and myself, and combines them to make an unbeatable reference for PHP programmers at all levels.
My latest book has hundreds more tips on how to use PHP, Apache, and MySQL, plus Perl, Python, shell scripts, performance tuning, and more!
|