Table of contents : Cover......Page 1 Title......Page 3 Copyright......Page 4 Contents......Page 5 List of Figures......Page 7 1 Introduction......Page 11 2 Example Database......Page 13 3 A Bird's Eye View of SQL......Page 15 4 The Standard Questions......Page 19 5 The First Two Questions......Page 21 6 Standard Questions Involving "or'' and "both-and"......Page 27 7 Negation in SQL......Page 33 8 Standard Questions Involving "at least"......Page 37 9 Negation Revisited......Page 39 10 Type 2 SQL Queries......Page 41 11 Using Type 2 to Implement Real Negation......Page 45 12 Posing Questions Involving "at most," "exactly," "only," and "either-or"......Page 47 13 Computing Extremes as Type 2 Queries with Negation......Page 53 14 A Look at SQL Enhancements......Page 55 15 Handling Composite Keys......Page 63 16 Negation Over Composite Keys......Page 65 17 Standard Questions Involving "every"......Page 69 18 A Brief Interlude......Page 71 19 Additional Standard Questions......Page 73 20 Computing Aggregates for Groups......Page 75 21 Combining Scalar Expressions with Aggregation......Page 83 22 Some Old Questions Revisited......Page 85 23 Global Aggregations......Page 87 24 Comparing Base Values to Aggregates......Page 89 25 Combining Type 2 Queries with Aggregation......Page 93 26 The Overall Order of Evaluation......Page 97 27 NULL Values in SQL......Page 101 28 Introduction to Type 3 SQL Queries......Page 107 29 Inter-Query Connectors Revisited: Existential Quantifiers in SQL......Page 111 30 Some Old Questions Revisited—Again......Page 113 31 Data Manipulation Facilities of SQL......Page 119 32 Extensions to SQL......Page 125 33 Last Remarks......Page 127 Acknowledgments......Page 129 Notes......Page 130 Back Cover......Page 136