SQLのorder by句の使い方
Order byはSQL文の中で使用される、検索結果を並べ替えるためのキーワードです。指定した列や式に基づいて検索結果を並べ替えることができ、昇順や降順を指定することもできます。
クエリ:
SELECT column1, column2, …
FROM テーブル名
ORDER BY column1 [ASC|DESC], column2 [ASC|DESC], …
column1、column2などは、ソートする列の名前であり、1つまたは複数の列名であり、コンマで区切られています。
table_nameは、クエリを実行するテーブルの名前です。
ASCは昇順でソートされることを示し、デフォルトでは昇順でソートされます。
DESCは降順でソートされることを示します。
Can you please pass me the book?
本を取ってくれますか?
- 顧客を姓で昇順に並べ替えて表示する:
SELECT * FROM customers
ORDER BY last_name;
顧客テーブルからすべてのデータを取得し、last_name列で降順にソートします。
- 複数の列で並べ替える:
SELECT * FROM customers
ORDER BY last_name, first_name; – last_name列で昇順に並べ替え、その後、first_name列で昇順に並べ替える
顧客から全て選択し、苗字を降順で並べ替え、その後に名前を昇順で並べ替えます。
- 顧客を年で降順に並べ替えるために、使用表現は次の通りです:
SELECT * FROM customers
ORDER BY YEAR(birth_date) DESC;
ご注意:
- ORDER BYを使用すると、クエリ結果は指定された並び順に並べ替えられます。並び順が指定されていない場合、デフォルトは昇順です。
- ORDER BY句では、列名だけでなく列の位置番号(1から始まる)も使用できます。
- ORDER BY句では、関数や算術演算子などの式を使用することができます。