テーブルまたはビューから行を取得します。
構文
SELECT [ optimizer_hint ] [ ALL | DISTINCT ]
* | expression [ AS output_name ] [, ...]
FROM from_item [, ...]
[ WHERE condition ]
[ [ START WITH start_expression ]
CONNECT BY { PRIOR parent_expr = child_expr |
child_expr = PRIOR parent_expr }
[ ORDER SIBLINGS BY expression [ ASC | DESC ] [, ...] ] ]
[ GROUP BY { expression | ROLLUP ( expr_list ) |
CUBE ( expr_list ) | GROUPING SETS ( expr_list ) } [, ...]
[ LEVEL ] ]
[ HAVING condition [, ...] ]
[ { UNION [ ALL ] | INTERSECT | MINUS } select ]
[ ORDER BY expression [ ASC | DESC ] [, ...] ]
[ FOR UPDATE [WAIT n|NOWAIT|SKIP LOCKED]]
from_item
に対して、以下のオプションが利用できます。
table_name[@dblink ] [ alias ]
( select ) alias
from_item [ NATURAL ] join_type from_item
[ ON join_condition | USING ( join_column [, ...] ) ]
説明
SELECT
行を使用して、1 つ以上のテーブルから行を取得できます。 SELECT の一般的な処理は次のとおりです。
FROM
リストのすべての要素が計算されます。FROM
リストの各要素は、実際のテーブルまたは仮想テーブルです。FROM
リストで複数の要素を指定すると、指定された要素が交差結合されます。 詳細については、FROM
句のページをご参照ください。WHERE
句を指定すると、条件を満たさないすべての行が出力から削除されます。 詳細については、WHERE
句のページをご参照ください。GROUP BY
句を指定した場合、出力は 1 つ以上の値に一致する行のグループに分割されます。HAVING
句を指定した場合、指定した条件を満たさないグループは、出力から削除されます。 詳細については、GROUP BY
句およびHAVING
句のページをご参照ください。UNION
、INTERSECT
、およびMINUS
演算子を使用して、複数のSELECT
行の出力を組み合わせ、単一の結果セットを作ることができます。UNION
演算子は、結果セットの一方または両方にあるすべての行を返します。INTERSECT
演算子は、両方の結果セットにあるすべての行を返します。MINUS
演算子は、最初の結果セットにはあるが 2 番目の結果セットにはない行を返します。 上記の 3 つのケースではすべて、重複する行が削除されます。UNION
演算子でALL
を指定した場合、重複する行は削除されません。 詳細については、UNION
句、INTERSECT
句、およびMINUS
句のページをご参照ください。- 実際の出力行は、選択された各行に対して
SELECT
出力式を使用して計算されます。 詳細については、SELECT
リストのページをご参照ください。 CONNECT BY
句は、階層関係を持つデータを選択するために使用されます。 このタイプのデータには、行の間に親子関係があります。 詳細については、CONNECT BY
句のページをご参照ください。ORDER BY
句を指定した場合、返された行は指定された順序でソートされます。ORDER BY
句を指定しなかった場合、行はシステムが生成する最速の順序で返されます。 詳細については、ORDER BY
句のページをご参照ください。DISTINCT
は結果から重複行を削除します。ALL
は重複行を含むすべての候補行を返します。 デフォルト値は ALL です。 詳細については、DISTINCT
句のページをご参照ください。FOR UPDATE
句を使用すると、SELECT
行は、選択した行を同時更新に対してロックします。 詳細については、FOR UPDATE
句のページをご参照ください。
値を読み取るには、テーブルに対する SELECT
権限が必要です。 FOR UPDATE
行を使用するには、UPDATE
権限が必要です。
パラメーター
パラメーター | 説明 |
---|---|
optimizer_hint | オプティマイザへのコメント埋め込みヒント。 このパラメーターは、実行プランを選択するために使用されます。 |