Name

SELECT Statement

Synopsis

The SELECT statement retrieves rows, columns, and derived values from one or many tables of a database.

Platform

Command

DB2

Supported, with variations

(ANSI joins supported)

MySQL

Supported, with variations

(ANSI joins partially supported)

Oracle

Supported, with variations

(ANSI joins supported)

PostgreSQL

Supported, with variations

(ANSI joins partially supported)

SQL Server

Supported, with variations

(ANSI joins supported)

SQL2003 Syntax

The full syntax of the SELECT statement is powerful and complex, but can be broken down into these main clauses:

SELECT [{ALL | DISTINCT}] select_item [AS alias] [,...]
FROM [ONLY | OUTER]
   {table_name  [[AS] alias] | view_name [[AS] alias]} [,...]
[ [join_type] JOIN join_condition ]
[WHERE search_condition] [ {AND | OR | NOT} search_condition [...] ]
[GROUP BY group_by_expression{group_by_columns | ROLLUP group_by_columns |
      CUBE group_by_columns | GROUPING SETS ( grouping_set_list ) |
      ( ) | grouping_set , grouping_set_list}
   [HAVING search_condition] ]
[ORDER BY {order_expression [ASC | DESC]} [,...] ]

Keywords

Each of the keywords shown below, except the select_item clause, is discussed in greater detail in the “Rules at a Glance” section that follows:

[ALL | DISTINCT] select_item

Retrieves values that compose the query result set. Each select_item may be a literal, an aggregate or scalar function, a mathematic calculation, a parameter or variable, or a subquery, but a select_item is most commonly a column ...

Get SQL in a Nutshell, 2nd Edition now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.