Kindle Edition
Read instantly on your iPad, PC or Mac, no Kindle required
Buy Price: $34.53
Rent From: $19.02
 
 
   
Sell Back Your Copy
For a $0.14 Gift Card
Trade in
Have one to sell? Sell yours here
Joe Celko's SQL for Smarties: Advanced SQL Programming Third Edition (The Morgan Kaufmann Series in Data Management Systems)
 
 

Joe Celko's SQL for Smarties: Advanced SQL Programming Third Edition (The Morgan Kaufmann Series in Data Management Systems) [Paperback]

Joe Celko (Author)
4.2 out of 5 stars  See all reviews (59 customer reviews)


Available from these sellers.


Textbook Student FREE Two-Day Shipping for Students. Learn more

Formats

Amazon Price New from Used from
 
Kindle Edition
Rent from
$34.53
$19.02
 
Paperback $38.37  
Paperback, August 15, 2005 --  
Sell Back Your Copy for $0.14
Whether you buy it used on Amazon for $4.34 or somewhere else, you can sell it back through our Book Trade-In Program at the current price of $0.14.
Used Price$4.34
Trade-in Price$0.14
Price after
Trade-in
$4.20

Book Description

0123693799 978-0123693792 August 15, 2005 3
SQL for Smarties was hailed as the first book devoted explicitly to the advanced techniques needed to transform an experienced SQL programmer into an expert. Now, 10 years later and in the third edition, this classic still reigns supreme as the book written by an SQL master that teaches future SQL masters. These are not just tips and techniques; Joe also offers the best solutions to old and new challenges and conveys the way you need to think in order to get the most out of SQL programming efforts for both correctness and performance.

In the third edition, Joe features new examples and updates to SQL-99, expanded sections of Query techniques, and a new section on schema design, with the same war-story teaching style that made the first and second editions of this book classics.

* Expert advice from a noted SQL authority and award-winning columnist, who has given ten years of service to the ANSI SQL standards committee and many more years of dependable help to readers of online forums.
* Teaches scores of advanced techniques that can be used with any product, in any SQL environment, whether it is an SQL-92 or SQL-99 environment.
* Offers tips for working around system deficiencies.
* Continues to use war stories--updated!--that give insights into real-world SQL programming challenges.


Editorial Reviews

Amazon.com Review

In the SQL database community, Joe Celko is a well-known columnist and purveyor of valuable insights. In Joe Celko's SQL for Smarties: Advanced SQL Programming, he picks up where basic SQL training and experience leaves many database professionals and offers tips, techniques, and explanations that help readers extend their capabilities to top-tier SQL programming.

Although Celko denies that the book is about database theory, he nevertheless alludes to theory often to buttress his practical points. This title is not for novices, as the author points out. Instead, its intended audience is SQL programmers with at least a year's experience. The book maintains a fine balance between technical discussion and practical explanation--picking hot topics and offering advice on a wide range of issues.

The book uses ANSI SQL-89 as its baseline standard, with some mention of SQL-92 features. It does not, however, focus on any commercial product; this guide zeroes in on the SQL language. Celko covers all aspects of database design, optimization, and manipulation, with easy-to-understand explanations of key issues such as why not to use too many nulls, how to use practical normalization, and how to optimize queries.

This insightful text is manna for all the day-to-day SQL coders banging their heads over the language's subtle challenges. --Stephen W. Plain

Topics covered: Database design and normalization, SQL data types, querying, grouping, set operations, optimization, data scaling, and encoding. --This text refers to an alternate Paperback edition.

Review

"This book is a classic, and this revision will merely solidify its position."
--Rudy Limeback

Product Details

  • Paperback: 840 pages
  • Publisher: Morgan Kaufmann; 3 edition (August 15, 2005)
  • Language: English
  • ISBN-10: 0123693799
  • ISBN-13: 978-0123693792
  • Product Dimensions: 9.1 x 7.4 x 1.9 inches
  • Shipping Weight: 3.8 pounds
  • Average Customer Review: 4.2 out of 5 stars  See all reviews (59 customer reviews)
  • Amazon Best Sellers Rank: #706,148 in Books (See Top 100 in Books)

More About the Author

I was a member of the ANSI X3H2 Database Standards Committee from 1987 to 1997 and helped write the ANSI/ISO SQL-89 and SQL-92 Standards. I have eight books and have written over 800 columns in the computer trade and academic press, mostly dealing with data and databases.

I live in Austin,TX. When I am not writing, I am consulting, speaking at conferences, teaching SQL training classes anywhere on Earth or beating up newbies in SQL Newsgroups.

The rumor that I own only one black suit that I have worn for 30 years is false; I own six identical black suits that I have worn for 30 years.

 

Customer Reviews

59 Reviews
5 star:
 (31)
4 star:
 (14)
3 star:
 (8)
2 star:
 (4)
1 star:
 (2)
 
 
 
 
 
Average Customer Review
4.2 out of 5 stars (59 customer reviews)
 
 
 
 
Share your thoughts with other customers:
Most Helpful Customer Reviews

42 of 43 people found the following review helpful:
4.0 out of 5 stars An absolute MUST for any serious SQL programmer, February 14, 2000
First of all, I couldn't recommend this book for beginners. It is, however, PERFECT for the SQL programmer with some experience who is looking to take his/her SQL abilities to the next level. There are great pure SQL solutions for problems that many programmers think must be done outside of SQL in a host language. One of the most important lessons from the book is this: think in terms of sets and set theory instead of in terms of columns and rows. Lots of other great info though. Be warned: the examples are all written in the SQL-92 ANSI standard. Examples will have to be modified if your vendor-specific implementation of SQL doesn't follow the standard precisely. Kudos to Joe.
Help other customers find the most helpful reviews 
Was this review helpful to you? Yes No


151 of 170 people found the following review helpful:
3.0 out of 5 stars I'm a little underwhelmed..., January 11, 2002
By 
Bruce Pierson (Bozeman, MT USA) - See all my reviews
(REAL NAME)   
Not so much unimpressed at Joe's knowledge, which is impressive indeed: the book reads a lot more like a teaching text than most technical books.

But there are things in here which may lead astray some who have already done things that Joe advises strongly against. I will concentrate on one example: In chapter 3 "Numeric Data in SQL", under the heading "Generator Functions" (e.g., IDENTITY, AUTO_INCREMENT) we get this doozy: "This is a horrible, nonstandard, nonrelational proprietary extension that should be avoided whenever possible". Just a statement, no reason whatsoever provided for it, because I guess he assumes we know some "math rule" or something behind why it is such a bad idea. Now, we must think for a minute why one uses such a data column. In my own case, I have a table called Parts that contains parts from several different companies. So, I guess Joe would have me make a composite primary key from PN and CompanyID. But, wait a minute, that complicates matters when I need to have a foreign key reference to the Parts table, and, oh by the way, just what is CompanyID anyway, maybe some other composite key, or some goofy "rule-based" (can you say TRIBAL KNOWLEDGE) thing? You can't seriously believe that "ALFKI" is a better key than,say, 33. What happens when I get a new customer named "Alfred Kiplinger", and have to change the "rule" that I came up with for defining the primary key? See the problem? You're not going to remember the ID anyway, because the rule will be broken at some point. I also happen to think that a part number (to give one example) should be changeable. So, I don't make PN the primary key (because you should NEVER change a PK), I simply have the database generate one for me. What am I missing here? It was not explained to me in this book, it was just a blanket statement of preference, put across like a hard and fast rule.

But then come the contradictions. In the very next chapter on temporal data types, we get a very long paragraph on "key generators" and how they need to be designed to eliminate or minimize identical keys (I kid ye not!). He talks about elaborate hashing algorithms, the server system clock, random number generators, and how pseudorandom numbers are not usually a problem since the cycle size can be "hundreds of thousands or even millions of numbers". Huh? Amazon has 50,000,000 customers! I'm sure they wouldn't be too happy if "only" every millionth one had the same id! No mention in this entire section on GUID or UNIQUEIDENTIFIER, which won't repeat forever in the known universe!

Then there is seeming randomness to the topics introduced. I think I work with a guy that's a lot like Joe, but man, can it be hard to follow the "why" of what he is talking about! I usually figure it out about two days later when I'm sitting at my desk working on something completely different. Here's one example: We go from an incredibly long section on Domain Key Normal Form, with all of its calculus functional dependency stuff ("A determines B, therefore if CA = B, &c, &c, &c....."), to a paragraph right after this about normalization, and how a Students table should not have "Student data and also bowling scores". But come on, that's DB101, not Math335!

Bottom Line: The reason I gave three stars to this book is that I think I misread its intention. I believed it to be a book for someone who knew SQL, and wanted to become more advanced in SQL. Now that I ponder the title, however, I believe that it means "OK, here's a book for you scientific math types out there who want to apply your math degree to learn SQL", i.e., SQL for smarties, not for non-degreed dummies like myself. That, to me, is exactly how the book is written, and it probably succeeds against that yardstick.

Help other customers find the most helpful reviews 
Was this review helpful to you? Yes No


31 of 32 people found the following review helpful:
5.0 out of 5 stars Advanced SQL Programming!!!!, February 18, 1999
By A Customer
I have been programming database applications since 1984. I started using SQL in 1989. Since that time, I thought I had mastered SQL. Well ... I was wrong. Joe's book helps pin point the finer things concerning SQL ... how it really works. Anyone who is an ADVANCED user of SQL will find this book full of the little things that all most all developers will overlook. For example, how does a SQL statement really execute (pg 174 to 181) explains this in great detail. Many advanced developers are not just satisfied with knowing how to do something; but, want to know every little detail about how something really works. I found the chapters on normalization and Armstrong's Axioms to be the most useful concept in the entire book. Database design concepts are critical in performing a good, solid, and efficient query and this chapter brings it out very well. I have found this book to be my only source for advanced SQL concepts (besides Joe's puzzle book...). Good job ... and thanks.
Help other customers find the most helpful reviews 
Was this review helpful to you? Yes No

Share your thoughts with other customers: Create your own review
 
 
 
Most Recent Customer Reviews











Only search this product's reviews



Inside This Book (learn more)
First Sentence:
The major problem in learning SQL is that programmers are used to thinking in terms of files rather than tables. Read the first page
Key Phrases - Statistically Improbable Phrases (SIPs): (learn more)
store nbr, room nbr, week nbr, celeb name, adjacency list model, job nbr, nonsequenced duplicates, emp nbr, class nbr, exposed physical locators, financial median, dup cnt, dept nbr, common vendor extension, end lft, salary amt, seq nbr, nested set model, greg month, empty set returns, approximate numeric value, schema information tables, post tally, sup name, subquery expression
Key Phrases - Capitalized Phrases (CAPs): (learn more)
Social Security, United States, New Year, Chris Date, First Normal Form, Itzik Ben-Gan, Ken Henderson, Median Cursor, New Yorker, Steve Kass, Universal Coordinated Time, Boyce-Codd Normal Form, Current Resident, Domain-Key Normal Form, Fifth Normal Form, Finding Regions of Maximum Size, Fourth Normal Form, John von Neumann, Richard Romley, Third Normal Form
New!
Books on Related Topics | Concordance | Text Stats
Browse Sample Pages:
Front Cover | Table of Contents | First Pages | Index | Surprise Me!
Search Inside This Book:



What Other Items Do Customers Buy After Viewing This Item?


Tags Customers Associate with This Product

 (What's this?)
Click on a tag to find related items, discussions, and people.
 
(4)
(1)
(1)

Your tags: Add your first tag
 

Customer Discussions

This product's forum
Discussion Replies Latest Post
source code? 0 Oct 14, 2009
Why are the reviews for all editions lumped together? 1 Jan 17, 2008
See all 2 discussions...  
Start a new discussion
Topic:
First post:
Prompts for sign-in
 


Active discussions in related forums
Search Customer Discussions
   
Related forums



So You'd Like to...



Look for Similar Items by Category


Look for Similar Items by Subject