Joe Celko's thinking in sets [electronic resource] : auxiliary, temporal, and virtual tables in SQL / Joe Celko.

Celko, Joe.
Standardized Title:
Thinking in sets
Other Title:
Thinking in sets
1st edition
Amsterdam ; Boston : Elsevier / Morgan Kaufmann, c2008.
The Morgan Kaufmann Series in Data Management Systems
The Morgan Kaufmann Series in Data Management Systems
1 online resource (383 p.)
SQL (Computer program language).
Declarative programming.
Electronic books.
System Details:
text file
Joe Celko has looked deep into the code of novice SQL programmers and found a consistent and troubling pattern. These programmers have not changed their approach from writing code for a procedural language, like C, to a declarative language, like SQL. As a result they are not fully using the power and capability inherent in SQL and that translates into writing more code than they need to write, more complex code than is needed, and ultimately lower productivity. Thinking in sets reveals the conceptual shift these programmers need to make. Through detailed examples and clear explanation
Front Cover; Joe Celko's Thinking in Sets; Copyright Page; CONTENTS; Preface; Chapter 1. SQL is Declarative, Not Procedural; 1.1 Different Programming Models; 1.2 Different Data Models; 1.3 Tables as Entities; 1.4 Tables as Relationships; 1.5 Statements Are Not Procedures; 1.6 Molecular, Atomic, and Subatomic Data Elements; Chapter 2. Hardware, Data Volume, and Maintaining Databases; 2.1 Parallelism; 2.2 Cheap Main Storage; 2.3 Solid-State Disk; 2.4 Cheaper Secondary and Tertiary Storage; 2.5 The Data Changed; 2.6 The Mindset Has Not Changed; Chapter 3. Data Access and Records
3.1 Sequential Access3.2 Indexes; 3.3 Hashing; 3.4 Bit Vector Indexes; 3.5 Parallel Access; 3.6 Row and Column Storage; 3.7 JOIN Algorithms; Chapter 4. Lookup Tables; 4.1 Data Element Names; 4.2 Multiparameter Lookup Tables; 4.3 Constants Table; 4.4 OTLT or MUCK Table Problems; 4.5 Definition of a Proper Table; Chapter 5. Auxiliary Tables; 5.1 Sequence Table; 5.2 Permutations; 5.3 Functions; 5.4 Encryption via Tables; 5.5 Random Numbers; 5.6 Interpolation; Chapter 6. Views; 6.1 Mullins VIEW Usage Rules; 6.2 Updatable and Read-Only VIEWs; 6.3 Types of VIEWs; 6.4 Modeling Classes with Tables
6.5 How VIEWs Are Handled in the Database System6.6 In-Line Text Expansion; 6.7 WITH CHECK OPTION Clause; 6.8 Dropping VIEWs; 6.9 Outdated Uses for VIEWs; Chapter 7. Virtual Tables; 7.1 Derived Tables; 7.2 Common Table Expressions; 7.3 Temporary Tables; 7.4 The Information Schema; Chapter 8. Complicated Functions via Tables; 8.1 Functions without a Simple Formula; 8.2 Check Digits via Tables; 8.3 Classes of Algorithms; 8.4 Declarations, Not Functions, Not Procedures; 8.5 Data Mining for Auxiliary Tables; Chapter 9. Temporal Tables; 9.1 The Nature of Time; 9.2 The ISO Half-Open Interval Model
9.3 State Transition Tables9.4 Consolidating Intervals; 9.5 Calendar Tables; 9.6 History Tables; Chapter 10. Scrubbing Data with Non-1NF Tables; 10.1 Repeated Groups; 10.2 Designing Scrubbing Tables; 10.3 Scrubbing Constraints; 10.4 Calendar Scrubs; 10.5 String Scrubbing; 10.6 Sharing SQL Data; 10.7 Extract, Transform, and Load Products; Chapter 11. Thinking in SQL; 11.1 Warm-up Exercises; 11.2 Heuristics; 11.3 Do Not Use BIT or BOOLEAN Flags in SQL; Chapter 12. Group Characteristics; 12.1 Grouping Is Not Equality; 12.2 Using Groups without Looking Inside; 12.3 Grouping over Time
12.4 Other Tricks with HAVING Clauses12.5 Groupings, Rollups, and Cubes; 12.6 The WINDOW Clause; Chapter 13. Turning Specifications into Code; 13.1 Signs of Bad SQL; 13.2 Methods of Attack; 13.3 Translating Vague Specifications; Chapter 14. Using Procedure and Function Calls; 14.1 Clearing out Spaces in a String; 14.2 The PRD( ) Aggregate Function; 14.3 Long Parameter Lists in Procedures and Functions; Chapter 15. Numbering Rows; 15.1 Procedural Solutions; 15.2 OLAP Functions; 15.3 Sections; Chapter 16. Keeping Computed Data; 16.1 Procedural Solution; 16.2 Relational Solution
16.3 Other Kinds of Computed Data
Includes index.
Location Notes Your Loan Policy
Description Status Barcode Your Loan Policy