SELECT文に ORDER BY 句を追加すると、1つまたは複数の列を基準に昇順・降順でソートできます。
構文
SELECT
column1,
column2,
column3,
...
FROM
table_name
ORDER BY
column1 [ASC | DESC] [NULLS FIRST | NULLS LAST],
column2 [ASC | DESC] [NULLS FIRST | NULLS LAST];Code language: CSS (css)
パラメータ解説
ASC:昇順ソート。既定の並び替え。省略時はASCとなりますDESC:降順ソートNULLS FIRST:NULL値をNULL以外のデータより先に配置NULLS LAST:NULL値をNULL以外のデータより後ろに配置
ORDER BY句はSELECT文の最後に記述します。- 複数列によるソートに対応。各列に個別の並び替えルールを指定可能です。
単一列での降順ソート
SELECT name, sex
FROM student
ORDER BY name DESC;
Oracle実行結果:
SQL> select id, name from student order by name desc;
ID NAME
---------- ----------------
1 Tom
3 Lucy
2 JackCode language: JavaScript (javascript)
複数列を組み合わせたソート
まずnameを降順、次にsexを昇順で並べ替え
SQL> select id, name from student order by name desc, sex asc;
ID NAME
---------- ----------------
1 Tom
3 Lucy
2 JackCode language: JavaScript (javascript)
NULL値の制御
-- NULL値を先頭に表示
SELECT id,name,sex FROM student ORDER BY sex DESC NULLS FIRST;
-- NULL値を末尾に表示
SELECT id,name,sex FROM student ORDER BY sex DESC NULLS LAST;
ソート
Previous: テーブルへの挿入と検索
Next: Distinct 重複除去