Write for Us
SQL Performance Tuningby Peter Gulutzan and Trudy PelzerCopyright 2003Addison-Wesley
Finally, someone has written the book I have been asking for! While there are some good books available on SQL Server performance tuning, a common weakness among them all is a lack of really good information on tuning SQL. In many cases, when it comes to tuning a slow-performing SQL Server, one of the last things considered is tuning the actual SQL code itself. I guess this is because its hard work, much harder than tweaking hardware, tuning indexes, or changing a configuration setting.
Now we have a book for performance tuning SQL itself. As you may notice from the title of the book, it doesn't say "Transact-SQL Performance Tuning." It says "SQL Performance Tuning," which means that this book covers how to tune ANSI/ISO SQL: 1999. If you are strictly a SQL Server DBA or developer who only works with Transact-SQL, this is not a problem, as what you will learn from this book applies to Transact-SQL. Sure, you won't learn about some of the Transact-SQL-specific features in this book, but you will still learn a lot. And if you are a DBA or developer who does work with multiple databases, you will be especially pleased because what you learn applies to all of the databases you work with.
In fact, the SQL performance tips you will learn from this book have been tested in these Windows 2000-based versions of these databases:
Microsoft SQL Server 2000
IBM DB2
IBM Informix Dynamic Server 9.3
Ingress II 2.5
InterBase 6.0
MySQL 3.23
Oracle 9i
Sybase ASE 12.5
If you work with any of these databases, this book has a lot to offer you. This is especially true if you code SQL that is used in multiple databases.
Here's what the book covers:
Tuning Introduction
Simple Searches
ORDER BY
GROUP BY
Joins
Subqueries
Columns
Tables
Indexes
Constraints
Stored Procedures
ODBC
JDBC
Data Changes
Locks
Clients and Servers
Cost-Based Optimizers
To get the most out of this book, you should already have a good understanding of SQL, as this book does not teach it. You should also have a good understanding how SQL databases are used as back-end to n-tier applications.
Because the book covers SQL for multiple databases, and not all databases fully support ANSI SQL, the authors of the book often give database-specific notes or pointers during their discussions. Fortunately, these are kept separate from the main part of the text so you don't have to read about databases you are not interested in.
The authors do a good job of explaining their topics, and provide plenty of example code. In fact, the tone of the book is very light, often amusing, making it a fun read.
If you are in anyway involved as a DBA or developer who uses SQL in their job, this book is a must addition to your library.