SQL Indexing and Tuning e-Book

A tutorial covering SQL indexing and SQL tuning for developers: avoiding unnecessary details about database internals.

SQL indexing is the most effective SQL tuning method and requires the same care as schema design—yet it is often neglected during development. Use The Index, Luke explains SQL indexing from the source code perspective—covering ORM tools like Hibernate and Doctrine.

Use The Index, Luke! is actually a real book: it's the online edition of SQL Performance Explained. If you like this site, you should consider buying the book (starting from €9.95) to support our work on this site.

SQL Indexing in MySQL, Oracle, SQL Server, etc.

SQL Indexing is presented as a vendor independent topic. To improve the reading experience, the main body of the book uses the Oracle terms only. Product specific notes are provided as shown below.


Use The Index, Luke covers SQL indexing for IBM DB2. Tests were conducted with DB2 for Linux, UNIX and Windows, (LWU) V10.5 Express-C.


Use The Index, Luke covers SQL indexing for MySQL. Tests were conducted with MySQL 5.5 and 5.6.


Use The Index, Luke covers SQL indexing for the Oracle database. Tests were conducted with Oracle 11r2. 12c updates are currently added.


Use The Index, Luke covers SQL indexing for PostgreSQL. Tests were conducted with PostgreSQL 9.0 and 9.2.

SQL Server

Use The Index, Luke covers SQL indexing for Microsoft SQL Server. Tests were conducted with SQL Server 2008R2 and 2012. Updates for 2014 are currently added..

A full book, covering all major SQL databases is not yet cool enough? So check out these little links that appear next to the execution plans shown in the book: Try online at SQL Fiddle. Click on it to try the shown examples online at SQL Fiddle!

It's a living book—make sure to follow via RSS, Twitter or Facebook.

Have more questions about SQL indexing or tuning? No problem—the Ask.Use-The-Index-Luke.com forum is the right place to discuss them.

Use The Index, Luke is a free tutorial and is provided under the Creative Commons license. Reading online is possible on any web-enabled device—and you can also buy the print or PDF editions.

About the Author

Photo of Markus Winand
Markus Winand tunes developers for high SQL performance. He also published the book SQL Performance Explained and offers in-house training as well as remote coaching at http://winand.at/

?Recent questions at


different execution plans after failing over from primary to standby server

Sep 17 at 11:46 Markus Winand ♦♦ 741
oracle index update

Generate test data for a given case

Sep 14 at 18:11 Markus Winand ♦♦ 741
testcase postgres

Database design suggestions for a data scraping/warehouse application?

Aug 27 at 09:29 Markus Winand ♦♦ 741
mysql optimization database