他のバージョンの文書9.6 | 9.5 | 9.4 | 9.3 | 9.2 | 9.1 | 9.0 | 8.4 | 8.3 | 8.2 | 8.1 | 8.0 | 7.4 | 7.3 | 7.2

7.1. 概要

データベースからデータを取り出す処理、または、取り出すためのコマンドを問い合わせと言います。 SQLでは、SELECTコマンドを、問い合わせを指定するために使います。 SELECTコマンドの一般的な構文は次の通りです。

[WITH with_queries] SELECT select_list FROM table_expression [sort_specification]

以降の節では、選択リスト、テーブル式、並び替えの仕様について詳細に説明します。 WITH問い合わせはより進んだ機能のため最後で扱います。

単純な問い合わせの形式は次のようなものです。

SELECT * FROM table1;

table1というテーブルがあるとして、このコマンドはtable1からすべての行のすべてのユーザ定義の列を取り出します (抽出する手段はクライアントアプリケーションによって異なります。 例えば、psqlプログラムでは、アスキー文字によるテキスト図で画面上にテーブルを表示し、クライアントライブラリでは個々の行と列を取り出す機能を提供します。) 選択リストの指定における*は、テーブル式が持つすべての列を提供することを意味します。 選択リストでは、選択可能な列の一部を選択することも、選択可能な列を使用して計算することもできます。 例えば、table1abcという名前の列がある場合(他の列があっても構いません)、以下のような問い合わせができます。

SELECT a, b + c FROM table1;

(ここではbおよびcは数値型のデータであると仮定しています。) 詳細については項7.3を参照してください。

FROM table1は、単純な形のテーブル式で、読み込むテーブルは1つだけです。 一般にテーブル式は基本テーブルや結合そして副問い合わせなどで複雑に構成されることがあります。 しかし、以下のように、テーブル式をすべて省略し、SELECTコマンドを電卓として使用することもできます。

SELECT 3 * 4;

選択リストの式が様々な結果を返す場合、これはさらに有用です。 例えば、関数を次のように呼び出すことができます。

SELECT random();