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


Join with inequalities only

Dec 16 '14 at 12:06 Markus Winand ♦♦ 936
inequality join

PostgreSQL Scripts: Performance Testing and Scalability problem and question

Nov 12 '14 at 14:53 Markus Winand ♦♦ 936
testing postgresql scalability

PostgreSQL Bitmap Heap Scan on index is very slow but Index Only Scan is fast

Oct 31 '14 at 11:31 Markus Winand ♦♦ 936
index postgresql postgres sql