データの並べ替えは、データの視覚化やデータの洞察の収集などに役立つ特定の順序でデータを整理する必要があるシナリオで機能します。また、データの取得、クリーニング、分析のプロセスがはるかに簡単になります。
SQL には、データを昇順または降順に並べ替える機能を提供する ORDER BY 句があります。
このチュートリアルでは、ORDER BY と ASC キーワードを使用してデータを昇順に並べ替える方法を学習します。
注: デモンストレーションの目的で、Sakila サンプル データベースと MySQL バージョン 8.0 を使用します。該当すると思われるデータセットを自由に参照して使用してください。
SQL昇順
SQL の昇順とは、単にクエリ結果のデータを並べ替える方法を指します。昇順は、ターゲットのソート列に応じて、数値またはアルファベットのいずれかになります。
列の並べ替えに昇順を適用すると、SQL は最小 (最低) 値から最大 (最高) 値までの範囲のデータを整理します。
文字列の場合、昇順にはアルファベット順が使用され、A が最も低く、Z が最も高くなります。
SQL ORDER BY
ご想像のとおり、SQL で昇順または降順の並べ替えを実行するには、ORDER BY 句を使用します。
ORDER BY 句を使用すると、1 つ以上の列に基づいてクエリの結果セットを並べ替えることができます。句の構文は次のように表現できます。
SELECT 列 1、列 2、...テーブルから
注文 BY ソートする列;
ORDER BY 句の後に、並べ替え基準を指定します。これは基本的に注文したい列です。
SQL ASC キーワード
ORDER BY 句のコンテキスト内の ASC キーワードは、データを昇順で並べ替えるようデータベース エンジンに指示します。
これが ORDER BY 句のデフォルトのオプションであることに留意してください。したがって、データを昇順で並べ替えるように SQL に明示的に指示しなくても、デフォルトの操作として自動的に実行されます。
ORDER BY 句で ASC キーワードを適用する方法の構文は次のとおりです。
SELECT 列 1、列 2FROM テーブル名
注文 BY 列 ASC;
これにより、指定された列が昇順にソートされます。
例 1: 基本的な使用法
ORDER BY 句の使用例を見てみましょう。 sakila サンプル データベースの「film」テーブルを考えてみましょう。データをレンタル価格の高いものから昇順に並べ替えたいとします。
選択するタイトル、
リリース年 、
長さ、
賃貸料
から
映画
注文 による
レンタル料金 ASC;
この場合、ORDER BY 句の「rental_rate」を使用して、レンタル料金の最低から最高まで映画をすばやく並べ替えます。
結果の出力は次のようになります。
例 2: 複数の列の並べ替え
SQL では、並べ替えパラメータとして複数の列を指定することもできます。これは、複数の基準に基づいてデータを並べ替える必要がある場合に非常に役立ちます。
これを実現するには、ORDER BY 句に複数の列をカンマで区切ってリストするだけです。
サキラテーブルから「支払い」テーブルを取り出してみましょう。次のクエリ例に示すように、金額と「payment_date」に基づいて昇順で並べ替えることができます。
選択する顧客ID、
額、
支払期日
から
支払い
注文 による
金額ASC、
支払い日 ASC;
このクエリは、「payment」テーブルから「customer_id」、「amount」、および「payment_date」列をフェッチする必要があります。ただし、クエリでは、最初に支払い金額に基づいて結果が昇順に並べ替えられ、次に支払い日が続きます。
これにより、結果の表に示すように、二重の並べ替え基準が提供されます。
結論
このチュートリアルでは、ORDER BY 句を使用して SQL でデータを並べ替えるプロセスを詳しく説明しました。また、ASC キーワードを使用してデータを昇順に並べ替える方法も学びました。最後に、複数の列を使用してデータを並べ替える方法を検討しました。