テーブルまたはビューから行を取得します。
構文
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 | オプティマイザへのコメント埋め込みヒント。 このパラメーターは、実行プランを選択するために使用されます。 |