The Join Rule of Indexing

Markus Winand, Markus Winand - Tuesday 12 May - Session 2

Good performance of a row oriented relational database depends on indexes. Without indexes every SQL becomes a table scan and performance would be horrible. Markus Winand, who is the author of “SQL Performance Explained”, has much experience in tuning SQL in many relational databases. When it comes to good indexing Db2, Oracle, SQL Server, MySQL and many other databases are very much alike. Markus will present his “join rule of indexing” which is an easily applicable rule that improves performance of non-trivial queries by an order of magnitude regardless. This session is a guided tour from the basic of B-tree indexing to the ultimate goal of understanding the join rule of indexing. Although indexes can speed up select queries they are also overhead for insert, update and deletes. So Markus will also teach you a structured approach to design a minimum number of indexes which support all queries. This approach will also be used to proof the join rule of indexing. 
This session is intended for developers who write SQL, DBA’s who assist the development team with tuning and quality assurance team members. This session does apply not only apply to Db2 but also to all other relational databases, so feel free to sign-up your Oracle, SQL Server and other colleagues
ATTENTION: All attendees of this session get a free copy the book SQL Performance Explained by Markus Winand


  • A brief introduction to B-tree indexes
  • Multi-column indexes and the relevance of the index column order
  • Reading and understanding execution plans
  • The “index demand” as a means to reason about index designs
  • Join algorithms and how they are affected by indexing

Platform: Applies to ALL Relational Databases

← Back to all sessions

About: Markus Winand


As the SQL Renaissance Ambassador, it is Markus Winands mission to make developers aware of the evolution of SQL in the 21st century. His book “SQL Performance Explained” has been published in five languages and can be read online free of charge at His next book is currently in the works and can already be read online as it’s being written ( Markus is available as a trainer, speaker and consultant for all companies and developers interested in SQL. You’ll find more info at