Table Of Content

Introduction

Chapter 1: Databases versus File Systems

Chapter 2: Transactions and Concurrency Control

Chapter 3: Schema Level Objects

Chapter 4: Locating Data and Special Numbers

Chapter 5: Base Tables and Related Elements

Chapter 6: Procedural, Semi-Procedural and Declarative Programming

Chapter 7: Procedural Constructs

Chapter 8: Auxiliary Tables

Chapter 9: Normalization

Chapter 10: Numeric Data Types

Chapter 11: Temporal Data Types

Chapter 12: Character Data Types

Chapter 13: NULLs -- Missing Data in SQL

Chapter 14: Multiple Column Data Elements

Chapter 15: Table Operations

Chapter 16: Comparison or Theta Operators

Chapter 17: Valued Predicates

Chapter 18: CASE Expressions

Chapter 19: LIKE and SIMILAR TO Predicates

Chapter 20: BETWEEN and OVERLAPS Predicates

Chapter 21: The [NOT] IN() Predicate

Chapter 22: EXISTS() Predicate

Chapter 23: Quantified Subquery Predicates

Chapter 24: The Simple SELECT Statement

Chapter 25: Advanced SELECT Statements

Chapter 26: Virtual Tables: VIEWs, Derived Tables, CTEs and MQTs

Chapter 27: Partitioning Data in Queries

Chapter 28: Grouping Operations

Chapter 29: Simple Aggregate Functions

Chapter 30: Advanced Grouping, Windowed Aggregation and OLAP in SQL

Chapter 31: Descriptive Statistics in SQL

Chapter 32: Sub-Sequences, Regions, Runs, Gaps, and Islands

Chapter 33: Matrices in SQL

Chapter 34: Set Operations

Chapter 35: Subsets

Chapter 36: Trees and Hierarchies in SQL

Chapter 37: Graphs in SQL

Chapter 38: Temporal Queries

Chapter 39: Optimizing SQL