MySQL での日付によるソート

Preet Sanghavi 2023年1月30日
  1. INSERT ステートメントを使用して、MySQL のテーブルにエントリを挿入する
  2. SORT BY ステートメントを使用して、MySQL のテーブルの値を並べ替える
MySQL での日付によるソート

このチュートリアルは、MySQL で日付で値を並べ替える方法を理解することを目的としています。

データ分析またはデータ視覚化に MySQL を使用するほとんどの企業や組織は、日付に基づいてユーザーのさまざまなテーブル値を並べ替える必要があります。SORT BY ステートメントを使用すると、MySQL でこれを効率的に行うことができます。このステートメントを使用して、テーブルの値を任意の方法で配置できます。

たとえば、製品ベースの会社の場合、アナリストがプラットフォームへの登録日に基づいてさまざまなユーザーのレコードを並べ替えたい場合は、ORDER BY ステートメントを使用してこれを実行できます。

このステートメントをより深く理解してみましょう。

ただし、開始する前に、操作するダミーデータセットを作成します。ここでは、テーブル student_dates といくつかの行を作成します。

-- create the table student_dates
CREATE TABLE student_dates(
stu_id int,
stu_firstName varchar(255) DEFAULT NULL,
stu_date date,
primary key(stu_id)
);

INSERT ステートメントを使用して、MySQL のテーブルにエントリを挿入する

上記のクエリは、student_dates という名前のテーブルを作成します。INSERT ステートメントの助けを借りて、数人の学生のデータを追加しましょう。この操作は次のように実行できます。

-- insert rows to the table student_dates
INSERT INTO student_dates(stu_id,stu_firstName,stu_date)
VALUES(1,"Preet",STR_TO_DATE('24-May-2005', '%d-%M-%Y')),
(2,"Dhruv",STR_TO_DATE('14-June-2001', '%d-%M-%Y')),
(3,"Mathew",STR_TO_DATE('13-December-2020', '%d-%M-%Y')),
(4,"Jeet",STR_TO_DATE('14-May-2003', '%d-%M-%Y')),
(5,"Steyn",STR_TO_DATE('19-July-2002', '%d-%M-%Y'));

コードは、テーブル student_dates に学生データを入力します。このテーブルは、次のコマンドで視覚化できます。

SELECT * from student_dates;

コードブロックは次の出力を生成します。

stu_id	stu_firstName	stu_date
1		Preet			2005-05-24
2		Dhruv			2001-06-14
3		Mathew			2020-12-13
4		Jeet			2003-05-14
5		Steyn			2002-07-19

SORT BY ステートメントを使用して、MySQL のテーブルの値を並べ替える

上記のように、MySQL の sort by ステートメントを使用して値を並べ替えることができます。このロジックは、日付に外挿することもできます。これは、次の構文で実行できます。

SELECT * from name_of_the_table
ORDER BY date_column;

上記のように、すべてのテーブルのレコードは日付に基づいて並べ替えられます。これで、この概念を student_dates テーブルに適用できます。

この操作は、次のクエリで実行できます。

SELECT * from student_dates
ORDER BY stu_date;

コードの出力は次のように説明できます。

stu_id	stu_firstName	stu_date
2		Dhruv			2001-06-14
5		Steyn			2002-07-19
4		Jeet			2003-05-14
1		Preet			2005-05-24
3		Mathew			2020-12-13

コードブロックに表示されているように、すべての student_dates テーブルレコードは日付に基づいて並べ替えられます。逆にすることもできます。つまり、最新のレコードが最初に表示される順序でレコードが表示されるようにクエリを調整できます。

この手法も同様に役立ち、次の構文で理解できます。

SELECT * from student_dates
ORDER BY stu_date DESC;

コードブロックの出力は、次のように説明できます。

stu_id	stu_firstName	stu_date
3		Mathew			2020-12-13
1		Preet			2005-05-24
4		Jeet			2003-05-14
5		Steyn			2002-07-19
2		Dhruv			2001-06-14

したがって、MySQL の SORT BY ステートメントを使用すると、日付に基づいて特定のテーブルのレコードを効率的に並べ替えることができます。

著者: Preet Sanghavi
Preet Sanghavi avatar Preet Sanghavi avatar

Preet writes his thoughts about programming in a simplified manner to help others learn better. With thorough research, his articles offer descriptive and easy to understand solutions.

LinkedIn GitHub

関連記事 - MySQL Query