[内容简介]
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, 20 years later and in its fifth edition, this classic reference still reigns supreme as the only book written by a SQL master that teaches programmers and practitioners to become SQL masters themselves! These are not just tips and techniques; also offered are the best solutions to old and new challenges. Joe Celko conveys the way you need to think in order to get the most out of SQL programming efforts for both correctness and performance. New to the fifth edition, Joe features new examples to reflect the ANSI/ISO Standards so anyone can use it. He also updates data element names to meet new ISO-11179 rules with the same experience-based teaching style that made the previous editions the classics they are today. You will learn new ways to write common queries, such as finding coverings, partitions, runs in data, auctions and inventory, relational divisions and so forth. SQL for Smarties explains some of the principles of SQL programming as well as the code. A new chapter discusses design flaws in DDL, such as attribute splitting, non-normal forum redundancies and tibbling. There is a look at the traditional acid versus base transaction models, now popular in NoSQL products. You’ll learn about computed columns and the DEFERRABLE options in constraints. An overview of the bi-temporal model is new to this edition and there is a longer discussion about descriptive statistic aggregate functions. The book finishes with an overview of SQL/PSM that is applicable to proprietary 4GL vendor extensions.
- New to the 5th Edition:
- Downloadable data sets, code samples, and vendor-specific implementations!
- Overview of the bitemporal model
- Extended coverage of descriptive statistic aggregate functions
- New chapter covers flaws in DDL
- Examination of traditional acid versus base transaction models
- Reorganized to help you navigate related topics with ease
- Expert advice from a noted SQL authority and award-winning columnist Joe Celko, who served on the ANSI SQL standards committee for over a decade
- Teaches scores of advanced techniques that can be used with any product, in any SQL environment, whether it is SQL 92 or SQL 2011
- Offers tips for working around deficiencies and gives insight into real-world challenges
[目录]
PART I : Data Declaration Features 1: Databases versus File Systems 2: Transactions and Concurrency Control 3: Tables 4: Keys, Exposed Physical Locators and Generated Values 5:Normalization 6: VIEWs and CTEs 7: Auxiliary Tables and Views 8: Other Schema Objects 9: DDL Flaws to Avoid
PART II : Data Types 10: Numeric Data in SQL 11: Character Data Types in SQL 12: Temporal Data Types in SQL 13: Multiple Column Data Elements 14: NULLs and 3-Valued Logic in SQL 15: Table Administration Operations 16: Set Operators
PART III Row and Column Level Features 17: Comparison or Theta Operators 18: Quantified Subquery Predicates 19: BETWEEN and OVERLAPS Predicates 20: CASE Expression Family 21: LIKE and SIMILAR TO Predicates 22: Simple One Table SELECT Statements 23: Intermediate Aggregate Functions 24: Descriptive Statistic Aggregate Functions 25: OLAP Aggregate Functions 26: JOINs
PART IV: Data Structures in SQL 27: Graphs in SQL 28: Trees and Hierarchies in SQL 29: Queues and Lists 30: Matrices in SQL
PART V: Typical Queries 31: Coverings and Partitions 32: Runs, Gaps, and Islands Rewrite or Expansion 33: Inventory and Auction Models 34: Relational Division 35: Temporal Queries and Operations
PART VI: Implementation and Coding Issues 36: Access Methods 37: Basic Optimization Principles 38: Overview of SQL/PSM