Structured Query Language

Structured Query Language (SQL) is a widely-used programming language for working with relational databases. The name of the language is generally pronounced as the three letters of its abbreviation or, in some people's usage, as.

This Wikibook provides a short description of SQL, its origins, basic concepts and components, and many examples. The book follows the specifications of the SQL:2011 standard developed by a common committee of ISO and IEC. Their publications are not freely available but can be ordered online. Or you may want to refer to a working draft that you can download from Whitemarsh Information Systems Corporation.

Introduction

 * /About the Book/
 * /Database Management Systems (DBMS)/
 * /Relational DBMS (rDBMS)/
 * /SQL: A Language for Working with rDBMS/
 * /SQL: The Standard ISO IEC 9075 and various Implementations/
 * /Language Elements/
 * /Learning by Doing/

The Snippets Corner BBC Snippets screeenshot 5.jpg

 * SELECT code FROM examples WHERE topic = ...

Foundation

 * Create a simple Table
 * Handle Data
 * Example Database Structure
 * Example Database Data

Data Query Language

 * SELECT Fundamentals
 * Join Operation
 * Grouping
 * IS NULL Predicate
 * Predefined Functions
 * Set Operations
 * Case Expression
 * Subquery
 * Views

Data Manipulation Language

 * INSERT
 * INSERT, using Subqueries
 * UPDATE
 * UPDATE, using Subqueries
 * DELETE
 * DELETE, using Subqueries
 * MERGE
 * TRUNCATE
 * COMMIT and ROLLBACK

Data Definition Language

 * CREATE TABLE
 * Data Types
 * Foreign Key
 * Alter Table
 * Drop Table
 * Temporary Table
 * Indexes

Data Control Language

 * Managing Rights (GRANT / REVOKE)

Advanced Topics

 * Additional SELECT features
 * Pattern Matching (LIKE Predicate and much more)
 * IN, SOME/ANY, ALL, EXISTS
 * Advanced Grouping: Rollup / Cube
 * Window functions (Data Warehouses, OLAP)
 * With Clause (Common Table Expression CTE)
 * Recursions
 * NULLs and the Three Valued Logic
 * Transactions / Isolation Levels
 * Some Notes on typical SQL (non-trivial) Tasks
 * Retrieve Top N Rows per Group
 * Eliminate Duplicates

Appendices

 * Warnings and Exceptions (SQLSTATE)
 * /Glossary/