MySQL
 Computer >> コンピューター >  >> プログラミング >> MySQL

MySQLでソートされた出力結果を取得するには?ORDER BY句の基本と使い方

MySQLではSELECTコマンドを使用してテーブルからデータを取得します。ただし、並び順を指定しない場合、MySQLサーバーはどのような順序で行を返してもよいことになっています。そのため、結果セットを特定の順序で表示したい場合は、ORDER BY句を追加し、ソートの基準となる列(1つまたは複数)を明示的に指定する必要があります。

構文

SELECT column1, column2, ..., columnN
FROM table_name
ORDER BY column1 [ASC|DESC], [column2 [ASC|DESC], ...];

ソート方向の指定は省略可能で、デフォルトでは昇順(ASC)になります。降順で並べ替えたい場合は「DESC」を指定します。

使用例

次の例では、「Student」テーブルからId、Name、Addressの3つの列を取得し、「Name」列を基準に昇順でソートした結果セットを返しています。

mysql> Select Id, Name, Address from Student ORDER BY Name;
+------+---------+---------+
| Id   | Name    | Address |
+------+---------+---------+
| 2    | Aarav   | Mumbai  |
| 1    | Gaurav  | Delhi   |
| 15   | Harshit | Delhi   |
| 17   | Raman   | Shimla  |
+------+---------+---------+
4 rows in set (0.00 sec)

このように、ORDER BY句を使うことで、取得したデータを目的の列に基づいて整理された状態で表示できます。また、複数の列を指定した場合は、まず最初の列で並べ替えを行い、その値が同じ行同士を2番目以降の列でさらに並べ替えるため、より細かい順序制御も可能です。


  1. MySQLで現在のタイムゾーンを取得するには?基本構文とnow()関数の使い方

    MySQLのタイムゾーンを確認する基本の構文MySQLで現在設定されているタイムゾーンを確認するには、システム変数である @@global.time_zone(グローバル設定)と @@session.time_zone(セッション設定)を参照します。以下がその構文です。 mysql> SELECT @@global.time_zone, @@session.time_zone; 実行結果は以下の通りです。 +--------------------+---------------------+ | @@global.time_zone | @@session.time_zone | +-

  2. MySQLテーブルのカラム名を取得する方法【SHOW・DESCRIBE活用ガイド】

    SHOWコマンドでカラム名を取得するMySQLでは、SHOWコマンドを使うことで、テーブルのカラム(列)名を簡単に確認できます。カラム名だけでなく、データ型やNULL許可、キー情報なども一緒に取得できるのが特徴です。基本構文show columns from テーブル名;サンプルテーブルの作成まず、動作確認用に「DemoTable」というテーブルを作成します。mysql> create table DemoTable ( StudentId int NOT NULL AUTO_INCREMENT PRIMARY KEY, StudentFirstName varchar(