SQL SELECT 結果の並び順を指定する(order by)

SQLのselect文のorder byで結果の並び順を指定するサンプルです。

目次

結果の並び順 昇順で並べる
  order byの指定を数値で行う
  降順で並べる

昇順で並べる

select * from テーブル名
(where 条件)
order by 項目名,項目名・・・;

select文の最後にorder byと並べたい項目を指定すると、結果は指定した項目の昇順で並びます。

以下のテーブルがあるとします。

syainテーブル
id name romaji
1 鈴木 suzuki
2 田中 tanaka
3 佐藤 sato

SQL

上記テーブルからデータを取得するSQLにorder byを指定します。

select * from Syain
order by romaji;

2行目は、order byを指定しています。
項目「romaji」の項目を昇順で並び替えて行を抽出します。

結果

結果は、以下のとおりです。

syainテーブル
id name romaji
3 佐藤 sato
1 鈴木 suzuki
2 田中 tanaka

romajiの昇順で表示されました。

order byの指定を数値で行う

order byの指定は、項目名ではなく数値で行うことも可能です。

上記の例の場合は以下のように書き換えできます。

select * from Syain
order by 3;

2行目の3は、テーブルの3つめの項目の「romaji」を指します。

降順で並べる

select * from テーブル名
(where 条件)
order by 項目名 desc,(項目名 desc)・・・ ;

order byの項目にdescを使用すると指定した項目の降順で並びます。
降順にしたい項目が他にもある場合、その項目にもdescを追加します。

以下のテーブルがあるとします。

syainテーブル
id name romaji
1 鈴木 suzuki
2 田中 tanaka
3 佐藤 sato

SQL

上記テーブルからデータを取得するSQLにorder byとdescを指定します。

select * from Syain
order by romaji desc;

2行目は、order byとdescを指定しています。
項目「romaji」の項目を降順で並び替えて行を抽出します。

結果

結果は、以下のとおりです。

syainテーブル
id name romaji
2 田中 tanaka
1 鈴木 suzuki
3 佐藤 sato

romajiの降順で表示されました。

関連の記事

SQL SELECT 複数の値を条件にする(in演算子)
SQL SELECT 前方一致、あいまい検索(like)

△上に戻る