In The Art of SQL, author and SQL expert Stephane
Faroult argues that this "safe approach" only leads to disaster. His insightful
book, named after Art of War by Sun Tzu, contends that writing quick inefficient
code is sweeping the dirt under the rug. SQL code may run for 5 to 10 years,
surviving several major releases of the database management system and on
several generations of hardware. The code must be fast and sound from the start,
and that requires a firm understanding of SQL and relational theory.
The Art of SQL offers best
practices that teach experienced SQL users to focus on strategy rather than
specifics. Faroult's approach takes a page from Sun Tzu's classic treatise by
viewing database design as a military campaign. You need knowledge, skills, and
talent. Talent can't be taught, but every strategist from Sun Tzu to modern-day
generals believed that it can be nurtured through the experience of others. They
passed on their experience acquired in the field through basic principles that
served as guiding stars amid the sound and fury of battle. This is what Faroult
does with SQL.
Like a successful battle plan, good architectural choices
are based on contingencies. What if the volume of this or that table increases
unexpectedly? What if, following a merger, the number of users doubles? What if
you want to keep several years of data online? Faroult's way of looking at SQL
performance may be unconventional and unique, but he's deadly serious about
writing good SQL and using SQL well.
The Art of
SQL is not a cookbook, listing problems and giving recipes. The aim is to
get you-and your manager-to raise good questions.