Joe Celko's SQL for smarties advanced SQL programming

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 m...

Full description

Bibliographic Details
Main Author: Celko, Joe (-)
Format: eBook
Language:Inglés
Published: Amsterdam ; Boston : Morgan Kaufmann c2005.
Edition:3rd ed
Series:Morgan Kaufmann series in data management systems.
Subjects:
See on Biblioteca Universitat Ramon Llull:https://discovery.url.edu/permalink/34CSUC_URL/1im36ta/alma991009627079606719
Table of Contents:
  • front cover; copyright; table of contents; front matter; Introduction to the Third Edition; 1.1 What Changed in Ten Years; 1.2 What Is New in This Edition; 1.3 Corrections and Additions; body; 1 Database Design; 1.1 Schema and Table Creation; 1.1.1 CREATE SCHEMA Statement; 1.1.2 Manipulating Tables; 1.1.3 Column Constraints; 1.1.4 UNIQUE Constraints versus UNIQUE Indexes; 1.1.5 Nested UNIQUE Constraints; 1.1.6 Overlapping Keys; 1.1.7 CREATE ASSERTION Constraints; 1.1.8 Using VIEWs for Schema Level Constraints; 1.1.9 Using PRIMARY KEYs and ASSERTIONs for Constraints
  • 1.1.10 Avoiding Attribute Splitting1.1.11 Modeling Class Hierarchies in DDL; 1.2 Generating Unique Sequential Numbers for Keys; 1.2.1 IDENTITY Columns; 1.2.2 ROWID and Physical Disk Addresses; 1.2.3 Sequential Numbering in Pure SQL; 1.2.4 GUIDs; 1.2.5 Sequence Generator Functions; 1.2.6 Unique Value Generators; 1.2.7 Preallocated Values; 1.2.8 Random Order Values; 1.3 A Remark on Duplicate Rows; 1.4 Other Schema Objects; 1.4.1 Schema Tables; 1.4.2 Temporary Tables; 1.4.3 CREATE DOMAIN Statement; 1.4.4 CREATE TRIGGER Statement; 1.4.5 CREATE PROCEDURE Statement; 1.4.6 DECLARE CURSOR Statement
  • 2 Normalization2.1 Functional and Multivalued Dependencies; 2.2 First Normal Form (1NF); 2.2.1 Note on Repeated Groups; 2.3 Second Normal Form (2NF); 2.4 Third Normal Form (3NF); 2.5 Elementary Key Normal Form (EKNF); 2.6 Boyce-Codd Normal Form (BCNF); 2.7 Fourth Normal Form (4NF); 2.8 Fifth Normal Form (5NF); 2.9 Domain-Key Normal Form (DKNF); 2.10 Practical Hints for Normalization; 2.11 Key Types; 2.11.1 Natural Keys; 2.11.2 Artificial Keys; 2.11.3 Exposed Physical Locators; 2.11.4 Practical Hints for Denormalization; 2.11.5 Row Sorting; 3 Numeric Data in SQL; 3.1 Numeric Types
  • 3.1.1 BIT, BYTE, and BOOLEAN Data Types3.2 Numeric Type Conversion; 3.2.1 Rounding and Truncating; 3.2.2 CAST() Function; 3.3 Four-Function Arithmetic; 3.4 Arithmetic and NULLs; 3.5 Converting Values to and from NULL; 3.5.1 NULLIF() Function; 3.5.2 COALESCE() Function; 3.6 Vendor Math Functions; 3.6.1 Number Theory Operators; 3.6.2 Exponential Functions; 3.6.3 Scaling Functions; 3.6.4 Converting Numbers to Words; 4 Temporal Data Types in SQL; 4.1 Notes on Calendar Standards; 4.2 SQL Temporal Data Types; 4.2.1 Tips for Handling Dates, Timestamps, and Times; 4.2.2 Date Format Standards
  • 4.2.3 Handling Timestamps4.2.4 Handling Times; 4.3 Queries with Date Arithmetic; 4.4 The Nature of Temporal Data Models; 4.4.1 Temporal Duplicates; 4.4.2 Temporal Databases; 4.4.3 Temporal Projection and Selection; 4.4.4 Temporal Joins; 4.4.5 Modifying Valid-Time State Tables; 4.4.6 Current Modifications; 4.4.7 Sequenced Modifications; 4.4.8 Nonsequenced Modifications; 4.4.9 Transaction-Time State Tables; 4.4.10 Maintaining the Audit Log; 4.4.11 Querying the Audit Log; 4.4.12 Modifying the Audit Log; 4.4.13 Bitemporal Tables; 4.4.14 Temporal Support in Standard SQL
  • 5 Character Data Types in SQL