Getting started with SQL
Remarks#
SQL is Structured Query Language used to manage data in a relational database system. Different vendors have improved upon the language and have variety of flavors for the language.
NB: This tag refers explicitly to the ISO/ANSI SQL standard; not to any specific implementation of that standard.
Versions#
Version | Short Name | Standard | Release Date |
---|---|---|---|
1986 | SQL-86 | ANSI X3.135-1986, ISO 9075:1987 | 1986-01-01 |
1989 | SQL-89 | ANSI X3.135-1989, ISO/IEC 9075:1989 | 1989-01-01 |
1992 | SQL-92 | ISO/IEC 9075:1992 | 1992-01-01 |
1999 | SQL:1999 | ISO/IEC 9075:1999 | 1999-12-16 |
2003 | SQL:2003 | ISO/IEC 9075:2003 | 2003-12-15 |
2006 | SQL:2006 | ISO/IEC 9075:2006 | 2006-06-01 |
2008 | SQL:2008 | ISO/IEC 9075:2008 | 2008-07-15 |
2011 | SQL:2011 | ISO/IEC 9075:2011 | 2011-12-15 |
2016 | SQL:2016 | ISO/IEC 9075:2016 | 2016-12-01 |
Overview
Structured Query Language (SQL) is a special-purpose programming language designed for managing data held in a Relational Database Management System (RDBMS). SQL-like languages can also be used in Relational Data Stream Management Systems (RDSMS), or in “not-only SQL” (NoSQL) databases.
SQL comprises of 3 major sub-languages:
- Data Definition Language (DDL): to create and modify the structure of the database;
- Data Manipulation Language (DML): to perform Read, Insert, Update and Delete operations on the data of the database;
- Data Control Language (DCL): to control the access of the data stored in the database.
The core DML operations are Create, Read, Update and Delete (CRUD for short) which are performed by the statements INSERT
, SELECT
, UPDATE
and DELETE
.
There is also a (recently added) MERGE
statement which can perform all 3 write operations (INSERT, UPDATE, DELETE).
Many SQL databases are implemented as client/server systems; the term “SQL server” describes such a database.
At the same time, Microsoft makes a database that is named “SQL Server”. While that database speaks a dialect of SQL, information specific to that database is not on topic in this tag but belongs into the SQL Server documentation.