Nitin T. Kotak said
Prior to acquiring and reading this book, which is suggested reading for Introduction to SQL (course offered at some school of continuing education), my knowledge of SQL was limited to: SELECT * FROM TableName.
Now I find myself quite confident in composing ad hoc queries. I highly recommended this book to a systems administrator and developer who is novice when it comes to T-SQL, and has a little more than a passing familiarity with MS SQL 2005.
A large part of my familiarity with SQL is owed to this book, and a small extent to the lecturer. The value added by the lecturer was in the assignments and tests.
Why only four stars?
- The book doesn't offer Q&A at the end of the chapter to test your knowledge.
- The book shows multiple ways (sql queries) to accomplish the same objective, which I understand is necessary to introduce new concepts. But, the book does not consistently state circumstances under which the alternative is to be used.
- Some of the code samples could've been made easier for readers to grasp. Here is what I've annotated my copy of the book with...
On pg 153
Replace: SELECT COUNT(DISTINCT VendorID) AS NumberOfVendors,
COUNT(VendorID) AS NumberOfInvoices,...
With: SELECT COUNT(DISTINCT VendorID) AS NumberOfVendors,
COUNT(InvoiceID) AS NumberOfInvoices,...
On pg 157
Replace: SELECT VendorState, VendorCity, COUNT(*) AS InvoiceQty,...
With: SELECT VendorState, VendorCity, COUNT(InvoiceID) As InvoiceQty,...
On pg 185
Replace the entire example, which uses Inner Join when there is no need for it - not at this point, with the following:
USE AP
SELECT VendorId, LatestInv, AvgInvoice
FROM
/**/ (SELECT TOP 5 VendorId, MAX(InvoiceDate) AS LatestInv,
/**/ AVG(InvoiceTotal) AS AvgInvoice
/**/ FROM Invoices
/**/ GROUP BY VendorId
/**/ ORDER BY AvgInvoice DESC) AS Top5Vendors
ORDER BY LatestInv DESC
-- /**/ Used these characters because identation using spaces or tabs is not reflected in the review.
-------------------------------------------------------------------------
Additional source of useful information: SQL Server Books Online
Mark said
I'm a junior web developer, and I've found this book to be very useful. The explanations are concise and very clear. Great book for beginning-to-intermediate SQL Server 2005 development.
Jacob said
The only thing I can find wrong with it is that it didn't come with sql server cd. Other than that it's just fine.
Brian Knight said
If you're new to SQL Server, the format of this book could not be better or reading it cover to cover. It's designed (as Murach's other books) in a style to indroduce a small concept per page and give you an excercise to try it yourself. I recommend this book to all beginners to the technology but not necessarily if you have a lot of experience in the field already.
Andrew Novick said
I read Murach's SQL Server 2005 for Developers while looking for a book for teaching a class on SQL. Since the course is going to use SQL Server it seemed like an obvious fit. It is. This is a targeted book for the professional course on writing SQL for SQL Server 2005.
I suppose it could be used for learning SQL for other databases but it does a pretty good job of hitting all the SQL Server specific variations in SQL that make up T-SQL. I also suppose that it could be used for self directed study. Like the rest of the Murach books, it has a side by side format with explanation and related examples. Since there's plenty of room for Lab work, it really fits the classroom well.
Overall I'm happy with the book and don't have any real criticism. It is what it tries to be. A book for teaching SQL for SQL Server 2005.
Comments