ORDER BY
SELECT 文の結果を並び替える場合は、ORDER BY 句を使用します。構文は以下の通りです。
ORDER BY 列名 順序(昇順または降順)
ORDER BY 句は必ず SELECT 文の最後尾に書く必要があります。
SELECT * FROM tableA ORDER BY age
ORACLEは、順番を保障しない。だから、絶対にORDER BYをつけます。
複数のソートキーを指定する
「同順位」の行について更に細かく並び順を指定したい場合は、もう 1 つソートキーを追加する必要があります。ソートキーはカンマ区切りで複数指定することが出来ます。
販売単価の降順、商品 ID の昇順で並び替えを行う例を以下に示します。
SELECT * FROM tableProduct ORDER BY price,id
NULL の順番
NULL を含む列をソートキーにした場合、NULL は先頭または末尾にまとめて表示されます。先頭に来るか末尾に来るかは、特に決まっていません。中には、先頭か末尾かを指定することの出来る DBMS もあります。
Oracle の場合、NULL はデフォルトの昇順ソートでは最後、降順ソートでは最初に並び替えられます。
ソートキーに表示用の別名を使う
GROUP BY 句には、SELECT 句でつけた列の別名は使うことが許されていませんが、ORDERBY 句ではそれが許されています。したがって、以下のような SELECT 文は、エラーにはならず、正しく実行出来ます。