Full description not available
D**T
Most definitely not for beginners
The author spends a few pages early on whining about being dinged in reviews for earlier editions by people expecting a book more oriented toward those learning SQL. This is most definitely not that book.In fact, you'd best be pretty familiar with the terminology of SQL, of data bases, and ideally somewhat familiar with competing dialects of SQL implementations. Until you are -- and you will be by the end of the book -- it can be hard to understand what he is communicating. He takes no prisoners.Having plowed thru the book, I was a worthwhile purchase and did give me a few immediately useful tips I was able to use. (E.g., in addition to inclusion criteria in a WHERE statement, you can also include redundant exclusion criteria. Doing so sped up procession of a series of time consuming commands from a half hour to a few minutes.) And I better appreciate the many & complex ways SELECT statements can be configured and assembled.Most of the book looks a specific problems or types of problems, and the methodologies to address them. From the pattern of approach you will learn to build your own solutions to your own problems. But again, the book is not intended as a tutorial on basic or even intermediate SQL. It is not a tutorial at all save for a study on each of a variety of common problems DBAs face.
J**M
highly recommended
This is the second copy of this book I've bought after seeing one of our really smart DBAs copy. Excellent examples from a variety of types of queries and god textual annotation to back them up. You will want a copy on your shelf if you write any SQL queries beyond 'select * from my_table'
R**.
Great Content Horribly Written
This book has some fantastic information in it on how to properly write SQL code, especially from the perspective of a programmer in a structured language. The major glaring problem with the book is its editing. There are typos everywhere, many of them in code examples, which breaks them. Additionally large portions of the text are copied from chapter to chapter, probably making up 5% of the book. This seems lazy and also makes the book more confusing as you get a nagging feeling of deja vu. With a good editor this book might be worth 5 stars. As it is the book is only 3, causing a lot of confusion and problems where there shouldn't be any.
T**D
Finally and updated version
My old version was from the 90's. So much new information is available now. Even some not in the book and only online.
R**H
Looks great, also looking at the SQL Cookbook.
This one on first glance seems to be more technical than show-me-how with the Cookbook. Too soon to say yet.
B**M
Not quite what the title suggests...
In short, a dissapointment. There is way too much repetition, sometimes entire sections are repeated multiple times, way too much basics, and not enough advanced material too call this book "Advanced SQL Programming". I would classify essentially all but the last four or five chapters as a run through of basic SQL syntax and its constructs. Moreover, the type setting errors are annoying, for instance "*" being shown as ")" throughout.For those looking for (most of) the "advanced" stuff in this book I would rather recommend "Transact-SQL Cookbook" by Aleš Spetic and Jonathan Gennick. The T-SQL in that book is as easy to translate to other dialects as Celkos ISO-standard SQL.
R**E
Celko's English Muffin.
Joe Celko, SQL for Smarties 4/E (Morgan Kaufmann, 2011)Full disclosure: a copy of this book was provided to me free of charge by Amazon Vine.It had been a very long time since I had updated the Duration column on my spreadsheet, but I figured if any book warranted doing so, it would be SQL for Smarties. I knew it had taken me a long, long time to get through it (it sat on my desk at work for quite a while and I had no time there to get to it), but even I didn't know how long specifically. As of this writing, it is the third-longest I have ever taken to read a book—from first page to last, 1,062 days. (#2 is a book that had gone back to the library for three years before I took it out again; #1 is a book that got lost for four years before I stumbled upon it in a box and finished it up within the week.) That is one heckuva lot of time for a book, but then SQL for Smarties is not normally the kind of book one reads from beginning to end anyway, so take all that with a grain of salt.The bad part: there are long stretches of it that are pretty dry. Celko has been a member of many of the SQL standards committees, and quotes at length from the documents he helped to author for them. For some people, that might be a great way to learn. Me, I'm a big fan of examples, and lots of them, and they do show up in almost every section; I would've liked a stronger focus on practice than theory, but well, YMMV, and probably will. This is balanced out by the fact that when Celko lets his (non-existent) hair down, every once in a while a sentence will pop out that you can't believe you just read in what is, essentially, a technical manual, and those sorts of little surprises may seem like throwaways, but for someone like me, they add a lot of intangible value; this one will be a ref manual on my shelf after a lot of other ones have fallen by the wayside.The other drawback, and this was a consciously-planned one on Celko's part, is that the book is language-pure, which pretty much by definition in today's world means implementation-agnostic. Which is not a bad thing on the theory level, but can be nightmare in practice if you straddle a couple of database lines. I work with both T-SQL and MySQL, and more than once I've found myself doing something like saying “well, why aren't we using a LIMIT statement there?” when talking about a stored procedure in T-SQL. “See? Right here in Celko...”, and then we actually try it and Microsoft borks because LIMIT doesn't exist in T-SQL. (Hey, Microsoft, fix that, it's an amazing function.) To be fair to Celko, he throws in an admonition about that every so often, but that won't combat wishful thinking.On the other hand, the big, big upside is that as long as you keep the above caveats in mind, SQL for Smarties is really the only SQL reference book you'll ever need (pending new editions, of course); it may not be exhaustive—I think I remember Celko saying that once or twice—but it's pretty comprehensive, it dives into nooks and crannies that most people will never explore (even if they should), it addresses not only the way the language should be used but the ways it shouldn't (and is often pressed into service to do anyway), etc. There is a massive wealth of information here for database developers who use a flavor of SQL, and it belongs on the shelf of every person who fits that description, amateur or professional. *** ½
G**E
Superb SQL Book one of the best
I highly recommend this excellent book - I've read over 50 database books and this is in my top 5.Mr Celko writes in a highly opinionated, slightly arrogant style, I can understand how this annoys some readers.I though find it entertaining and above all educational, because he is so good at explaining complex topics in a readable practical manner. I love his characterisation of ID Idiot developers for example which is so true. It's a shame there are so few advanced practical sql books relevant to the real world like this - most others are far too simplistic and of no value to anyone beyond beginner level.Please somebody write some more books like this - especially focused on database programming and Postgres, for which there are no recently published books available (apart from Postgres tuning and admin).
S**Q
Good but many errors
I have always admired Joe Celko for bringing SQL smarts to SQL programming. This book is a very good step forward over the previous books. However within minutes of opening the book I found several errors. And I noticed this in his other books as well. It seems the editorial and technical staff of his publisher needs improving. The most frustrating thing is that there is no website or e-mail address in the book where to get the corrections or send errata.It can make for a frustrating and confusing read at time. His strict adherence to a SQL standard can be also frustrating. Perhaps just once in a while it would be nice to see things in T-SQL or PL/SQL.
J**K
very good, if you are very good
Don't underestimate the amount of knowledge required to understand this. It is an into depth book and if you are a novice to SQL you'll have a hard time to follow Joe. He obviously is very good so he shows you a multitude of "best possible solutions" assuming you know quite a bit already.Yes, it took me quite a bit of reading to fully understand his solutions but in the end they are worth the effort of buying & using the book to create better solutions for everyday programmer issues.
M**S
A really useful book
This is not the best book for someone with no sql experience but if you want to move on to the next level this is the book to help you do so.
E**X
just for the fun of having it on my desk
Bought an early edition years ago, just for the fun of having it on my desk. This edition is better and I agree with other reviews.
Trustpilot
Hace 2 semanas
Hace 1 mes