Joe Celko's SQL for Smarties, Third Edition and thousands of other textbooks are available for instant download on your iPad, PC or Mac. Get your free Kindle app.

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

Joe Celko's SQL for Smarties: Advanced SQL Programming Second 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, October 25, 1999 --  

Book Description

1558605762 978-1558605763 October 25, 1999 1

SQL for Smarties was hailed as the first book devoted explicitly to the advanced techniques you need to transform yourself into an expert SQL programmer. Now, in this fully updated second edition, SQL mastermind Joe Celko keeps you moving forward, using his entertaining, conversational style to teach you the best solutions to old and new challenges and to convey the way you need to think if you really want to get the most out of your SQL programming efforts.


Inside, logic- and set-based analyses replace the traditional, procedural approach to problem-solving, helping you make the conceptual leap that separates an SQL guru from the rest of the pack. As you catch on to Celko's approach, you'll devour what he has to say about some of SQL's toughest topics: how aggregate functions really work, the best way to work with NULLs, how and why to fake array structures, and much more.


This book gives special emphasis to SQL-92 and product-independent techniques that let you optimize performance or achieve highly specialized behavior, regardless of the RDBMS with which you work. If you're serious about SQL, you won't let SQL for Smarties out of your sight.



* Presents all-new war stories that give you insight into real-world SQL programming challenges.
* Continues to cover SQL-89 but focuses heavily on the SQL-92 standard.
* Offers still more undocumented tips for working around system deficiencies.
* Teaches scores of advanced techniques that can be used with any product, in any SQL environment.
* Offers expert advice from a noted SQL authority and award-winning columnist.


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 --This text refers to an out of print or unavailable edition of this title.

Product Details

  • Paperback: 550 pages
  • Publisher: Morgan Kaufmann; 1 edition (October 25, 1999)
  • Language: English
  • ISBN-10: 1558605762
  • ISBN-13: 978-1558605763
  • Product Dimensions: 9 x 7 x 1.4 inches
  • Shipping Weight: 1.9 pounds
  • Average Customer Review: 4.2 out of 5 stars  See all reviews (59 customer reviews)
  • Amazon Best Sellers Rank: #442,079 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
This review is from: Joe Celko's SQL for Smarties: Advanced SQL Programming Second Edition (The Morgan Kaufmann Series in Data Management Systems) (Paperback)
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)   
This review is from: Joe Celko's SQL for Smarties: Advanced SQL Programming Second Edition (The Morgan Kaufmann Series in Data Management Systems) (Paperback)
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:
"THIS CHAPTER DISCUSSES the DDL (Data Definition Language), which is used to create a database schema, and it is related to the next chapter on the theory of database normalization." Read the first page
Key Phrases - Statistically Improbable Phrases (SIPs): (learn more)
empty set returns, first working table, common vendor extension, rgt numbers, adjacency list model, class nbr, transitive closure model, nested set model, room nbr, approximate numeric value, theta operator, rightmost blanks, subquery expression, relational division, local temporary table, scalar subquery, pseudo transitivity, statistical median, most optimizers, physical row, other aggregate functions, jul month, outer join, vendor extensions, duplicate rows
Key Phrases - Capitalized Phrases (CAPs): (learn more)
Chris Date, United States, Third Normal Form, Cumulative Statistics, Gloria Glamour, Universal Coordinated Time, Asian Black Caucasian Hispanic Other, Common Era, Converting Values, Fifth Normal Form, Finding Regions of Maximum Size, First Normal Form, Fourth Normal Form, John von Neumann, New York Stock Exchange, Representing Arrays, Sybase System, The Pascal
New!
Books on Related Topics | Concordance | Text Stats
Browse Sample Pages:
Front Cover | Table of Contents | First Pages | Index | Back Cover | 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.
 
(5)

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