( New ) 新連載スタート!2人の会話形式でPythonを学ぶ「週末Pythonゆる講座」はこちら ▶▶

【SQL】ORDER BY|順序の並び替えを指定する

ORDER BYとは?

ORDER(おーだー)

順序、順、語順、整理、整頓(せいとん)、整列、(…の)状態、調子、(社会の)秩序、治安

Weblio英和辞書

ORDER(おーだー)は英単語では「順番」という意味があり

SQLでも同様に「順序」を指定する際に使います

また「ORDER BY」で一括りなので「BY」も忘れずに

ORDER BYの設定方法

SELECT ***

FROM ***

WHERE ***

ORDER BY 【順序を指定したい列名】

ORDER BYでは順序を指定したい列名を記述していきます

複数ある場合は(,)カンマ区切りで記載していきましょう

お題

会計列を並び替える」SQLを記述します

SQLデータベース抽出の例
ORDER BY
    会計 ASC
SQLデータベース抽出の例

昇順・降順の設定

ORDER BYでは「昇順・降順」を明示することができます

つまり小さい順に並べる・大きい順位並べるができるということです

ORDER BY句の後に、「昇順はASC」、「降順はDESC」を記述します

ASCENDING(アセンディング)

のぼっていく、上昇的な

Weblio英和辞書

DESCENDING(ディセンディング)

下ってゆく、降下的な、下向きの

Weblio英和辞書

それぞれの頭のアルファベットで省略して「ASC・DESC」としています

お題

会計列を降順(大きい順)に並び替える」SQLを記述します

ORDER BY
    会計 DESC
SQLデータベース抽出の例
ORDER BY句を指定しない場合は!?

ORDER BY句でASC・DESCの指定が無い場合は、実行ごとに異なる可能性があります

同一の結果を出すために、必ず指定する癖をつけましょう

複数項目の並び替え

複数ある場合は(,)カンマ区切りで記載していきます

1番目に記述した列を入れ替えた後で、2番目に記述した列を入れ替えるという設定になります

つまり、最初の列で同じ項目だった場合、次に指定した列で入れ替えるという指定です

お題

商品列と会計列を昇順に並び替える」SQLを記述します

ORDER BY
    商品名, 会計 ASC
SQLデータベース抽出の例

商品名が「A」→「X」と並んでおり、2件ある「ABC-01」は安い順に並んでいます

ORDER BY
    商品名 ASC,
    会計 DESC

カンマ区切りでそれぞれに「ASC・DESC」を付けると、それぞれに「昇順・降順」の設定ができます

まとめ

ORDER BY句」は「GROUP BY句」と併用されることが多いです

かなり頻出のSQL構文になるのでぜひ覚えてみてください


コメントを残す

メールアドレスが公開されることはありません。