Perfectly intelligent programmers often struggle when forced to work with SQL. Why? Joe Celko believes the problem lies with their procedural programming mindset, which keeps them from taking full advantage of the power of declarative languages. The result is overly complex and inefficient code, not to mention lost productivity.
This book will change the way you think about the problems you solve with SQL programs.. Focusing on three key table-based techniques, Celko reveals their power through detailed examples and clear explanations. As you master these techniques, you'll find you are able to conceptualize problems as rooted in sets and solvable through declarative programming. Before long, you'll be coding more quickly, writing more efficient code, and applying the full power of SQL
. Filled with the insights of one of the world's leading SQL authorities - noted for his knowledge and his ability to teach what he knows.
. Focuses on auxiliary tables (for computing functions and other values by joins), temporal tables (for temporal queries, historical data, and audit information), and virtual tables (for improved performance).
. Presents clear guidance for selecting and correctly applying the right table technique.
{"itemData":[{"priceBreaksMAP":null,"buyingPrice":25.84,"ASIN":"0123741378","isPreorder":0},{"priceBreaksMAP":null,"buyingPrice":40.78,"ASIN":"0123820227","isPreorder":0},{"priceBreaksMAP":null,"buyingPrice":32.1,"ASIN":"0123877334","isPreorder":0}],"shippingId":"0123741378::2BS7213YYARYnpy43YLjVRrsr2OGAaXSqv7aO7Vc8yimRzyEGmdx8Rfv1TNu6wLi4gPakTg4%2FcKRk2PgpM7fmR%2FdItcarTIpy9T2SwfBEek%3D,0123820227::LLTLDvjJjkaf1okTsWVkIinsxDa99vCasPv5qGrgRapNPIKeXDuBIUNkoEFW1MCKG3Ou3GUWOyQypsPsScDoPLLoNkrZWwCMAA8ZllZ5e8ydEB1K0ilk0Q%3D%3D,0123877334::LwruC5cdPhsVprPqyTpRxZWZlA894WgyFEorgsvzLZLAN%2FIJg3U3ra87L1Z1HDn7XqHn8me5hKXvQTrUq3NFWMX26IXAkPSqnbD5rvW2nF8C4x7LowNOKw%3D%3D","sprites":{"addToWishlist":["wl_one","wl_two","wl_three"],"addToCart":["s_addToCart","s_addBothToCart","s_add3ToCart"],"preorder":["s_preorderThis","s_preorderBoth","s_preorderAll3"]},"currenyCode":"USD","shippingDetails":{"xz":"availability","yz":"availability","xy":"same","xyz":"availability"},"tags":["x","y","z"],"strings":{"showDetails":"Show details","differentAvailabilityAll":"Some of these items ship sooner than the others.","addToWishlist":["add to wishlist","Add both to Wish List","Add all three to Wish List"],"shippingError":"An error occurred, please try again","differentAvailability":"One of these items ships sooner than the other.","preorder":["Pre-order this item","Pre-order both items","Pre-order all three items"],"addToCart":["Add to Cart","Add both to Cart","Add all three to Cart"],"showDetailsDefault":"Show availability and shipping details","priceLabel":["Price:","Price for both:","Price for all three:"],"hideDetailsDefault":"Hide availability and shipping details","hideDetails":"Hide details"}}
Joe Celko served 10 years on ANSI/ISO SQL Standards Committee and contributed to the SQL-89 and SQL-92 Standards. He has written over 900 columns in the computer trade and academic press, mostly dealing with data and databases. Joe has authored eight books on SQL for Morgan Kaufmann.
Product Details
Paperback: 384 pages
Publisher: Morgan Kaufmann; 1 edition (February 5, 2008)
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 nine books and have written over 1200 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.
Mr. Celko has written many books on SQL and how set theory is the basis for SQL programming. His tone has gotten more ironic as more programmers without the proper training continue to rely on various forms of cursors, loops and temporary tables to manipulate data using SQL. And with the passing of EF Codd, no one quite remember any more that relational database was built on set theory.
Celko is a purist in terms of writing one-pass SQL statement. More programmers should take the same approach. Java & C# programmers think that SQL tables are either streams or files -- holders of data inside their objects. Relational-Object mapping issues are left to Hibernate or DAO. Database tuning is left to DBAs and their tuning wizards. With 2008 server processing power, inefficient sql program are hard to detect and multi-pass SQL statements are now the norm.
It's good to read Celko and get one's mind back to the basics of relational technology. I bought this book for my SQL programming team.
I picked this up at a bookstore because it was the only mildly intriguing title I saw, and because I don't spend much time thinking about databases. As another reviewer mentions, there is an amusing old-school style, and a humorous example or two of SQL code tortured into doing something "right" and, of course, doing everything in the database. There are numerous typos, too, but not of the type that would put me off.
Maybe I'm not so annoyed by the suboptimal organization of the book and the scattered but useful insights as I should be. But where I found useful things, the payoff was deep. I don't mind Celko's tunnel-vision on the database. He advocates but does not evangelize his position. He knows what his chosen tools can do but betrays no hint, at least to me, of being a Golden Hammer type.
I could also care less whether Joe Celko is a hipster with cool office sneakers who twitters heartfelt one-liners on fresh tech. I know this is hard to fathom, but people over 40 are still alive and do produce useful things. I suspect Joe wears three-piece suits to the office now and always will. He also seems authentic; that goes a long way. I got a good deal of useful information from this book, but it was an uphill read at times.
I'm sure there are bits of gold in this book, but I'll probably never find them. Joe, you need to fire your editor. There are so many grammatical errors in this book that it's almost unintelligible. While this is just my opinion, I think it's important to be precise in your use of language when talking about a technical subject. I hope this was just rushed to print and that a second edition is in the works.