ホームページ > データベース > mysql チュートリアル > MySQL の ORDER BY 関数を使用して結果を並べ替える方法

MySQL の ORDER BY 関数を使用して結果を並べ替える方法

PHPz
リリース: 2023-07-24 18:09:33
オリジナル
2375 人が閲覧しました

MySQL の ORDER BY 関数を使用して結果を並べ替える方法

はじめに:
データベース内のデータを処理するとき、結果を並べ替える必要がある状況によく遭遇します。 MySQL は、指定されたルールに従ってクエリ結果を簡単に並べ替えることができる ORDER BY 関数を提供します。この記事では、MySQL の ORDER BY 関数の使い方とコード例を紹介します。

1. ORDER BY 関数の基本構文
ORDER BY ステートメントは、クエリ結果を並べ替えるために使用されます。デフォルトでは、順序は昇順です。 ORDER BY ステートメントの基本構文は次のとおりです。

SELECT 列名 1, 列名 2, ...
FROM テーブル名
ORDER BY 列名 1 [ASC|DESC], 列名 2 [ASC|DESC], ...

説明:

  1. column_name1、column_name2、...: クエリ対象の列名。1 つ以上にすることができます。
  2. table_name: データテーブル名。
  3. column_name1、column_name2、...: 並べ替える列名。1 つ以上にすることができます。
  4. ASC|DESC: オプションのパラメータ。並べ替え方法の指定に使用されます。デフォルトは昇順 (ASC) です。降順で並べ替える必要がある場合は、DESC キーワードを使用します。

2. 例
Student という名前のデータ テーブルがあり、そのテーブルには学生の学生番号 (SID)、名前 (name)、年齢 (age) が含まれているとします。結果は小さいものから大きいものの順に表示されます。

サンプル コードは次のとおりです。

-- 创建student数据表
CREATE TABLE student (
  sid INT PRIMARY KEY,
  name VARCHAR(50),
  age INT
);

-- 插入测试数据
INSERT INTO student (sid, name, age) VALUES (1, '张三', 20);
INSERT INTO student (sid, name, age) VALUES (2, '李四', 18);
INSERT INTO student (sid, name, age) VALUES (3, '王五', 22);
INSERT INTO student (sid, name, age) VALUES (4, '赵六', 19);

-- 查询并按照年龄升序排序
SELECT * FROM student ORDER BY age ASC;
ログイン後にコピー

上記のコードを実行すると、年齢の小さい順から大きい順に並べ替えられた結果が得られます。

+-----+------+------+-----+
| sid | name | age  |     |
+-----+------+------+-----+
|   2 | 李四   |   18 |     |
|   4 | 赵六   |   19 |     |
|   1 | 张三   |   20 |     |
|   3 | 王五   |   22 |     |
+-----+------+------+-----+
ログイン後にコピー
ログイン後にコピー

単一の列ではなく、「複数の列で並べ替え」で並べ替えることもできます。まず年齢で昇順に並べ替え、年齢が同じ場合は学生番号で昇順に並べ替えたいとします。

サンプル コードは次のとおりです:

-- 查询并按照年龄和学号升序排序
SELECT * FROM student ORDER BY age ASC, sid ASC;
ログイン後にコピー

上記のコードを実行すると、年齢と学生番号で昇順に並べ替えられた結果が得られます:

+-----+------+------+-----+
| sid | name | age  |     |
+-----+------+------+-----+
|   2 | 李四   |   18 |     |
|   4 | 赵六   |   19 |     |
|   1 | 张三   |   20 |     |
|   3 | 王五   |   22 |     |
+-----+------+------+-----+
ログイン後にコピー
ログイン後にコピー

必要な場合年齢で降順に並べ替えるには、列名の後に DESC キーワードを追加するだけです。

サンプル コードは次のとおりです:

-- 查询并按照年龄降序排序
SELECT * FROM student ORDER BY age DESC;
ログイン後にコピー

上記のコードを実行すると、結果が年齢の降順で並べ替えられます:

+-----+------+------+-----+
| sid | name | age  |     |
+-----+------+------+-----+
|   3 | 王五   |   22 |     |
|   1 | 张三   |   20 |     |
|   4 | 赵六   |   19 |     |
|   2 | 李四   |   18 |     |
+-----+------+------+-----+
ログイン後にコピー

概要:
Thisこの記事では、MySQL の使用方法を紹介しています。ORDER BY 関数はクエリ結果を並べ替え、コード例を示しています。 ORDER BY 関数を使用すると、実際のニーズに合わせて、指定した並べ替えルールに従ってクエリ結果を簡単に並べ替えることができます。この記事が読者の ORDER BY 関数の理解と使用に役立つことを願っています。

以上がMySQL の ORDER BY 関数を使用して結果を並べ替える方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート