Description:This book teaches core or basic SQL, that is, the subset of the language that's common to all of the many database products. That's a hard thing to do well, because the common core is small compared to the wide variety of vendor-specific extensions. But it's worth doing, and this book does it well. Approaching SQL for the first time, I used the book to get a foundation of understanding and get up and running creating tables, constraints, and views, and constructing queries, joins, and subqueries.
The book's explanations are clear, and the selection of material seems good. The end-of-chapter review questions are helpful. The exercises are helpful and essential, but I found them to be somewhat too mechanical, and there should be more of them to help cement each topic before moving on to the next.
The book's vendor-neutral approach has its costs. Some of the features that it describes, such as catalogs and roles, aren't implemented in all database products, so you have to try them with your database or consult your documentation to find out. The book is very clear about this, though; I never found an example that didn't work that wasn't flagged as not supported in all products. And an alternative approach is always provided. As another reviewer pointed out, the book describes the crucial 'Hello World' task of connecting to the database server and submitting your first SQL statement in only general terms, since it depends on your database product and client. And unfortunately one very important set of tasks is vendor-specific and therefore not covered here: finding out what databases, users, and roles are present, and what the structure of each database and table is.
In summary, if you know you want to use SQL with a particular database product, you'd probably do better to get a book that's specific to that product. But if you want to understand and use the core of SQL before you move on to your vendor's extentions, this is a good book to get you there.