在 MySQL 中按日期排序

本教程旨在了解如何在 MySQL 中按日期对值进行排序。

大多数使用 MySQL 进行数据分析或数据可视化的企业和组织都需要根据日期对其用户的不同表值进行排序。使用 SORT BY 语句,我们可以在 MySQL 中有效地做到这一点。使用这个语句,我们可以以任何我们希望排列的方式排列表的值。

例如,对于基于产品的公司,如果分析师希望根据不同用户在平台上的注册日期对他们的记录进行排序,他们可以使用 ORDER BY 语句来完成此操作。

让我们试着更深入地理解这句话。

但是,在开始之前,我们创建一个虚拟数据集来使用。在这里,我们创建了一个表 student_dates 和几行。

-- create the table student_dates
CREATETABLEstudent_dates(stu_idint,stu_firstNamevarchar(255)DEFAULTNULL,stu_datedate,primarykey(stu_id));

使用 INSERT 语句在 MySQL 的表中插入条目

上面的查询创建了一个名为 student_dates 的表。在 INSERT 语句的帮助下,让我们为一些学生添加数据。该操作可以如下进行。

-- insert rows to the table student_dates
INSERTINTOstudent_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*fromstudent_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

在 MySQL 中使用 SORT BY 语句对表的值进行排序

如上所述,我们可以使用 MySQL 中的 sort by 语句对值进行排序。这个逻辑也可以外推到日期。我们可以使用以下语法来做到这一点。

SELECT*fromname_of_the_tableORDERBYdate_column;

正如我们在上面看到的,所有表的记录都将根据日期排序。我们现在可以将这个概念应用到我们的 student_dates 表中。

我们可以使用以下查询执行此操作。

SELECT*fromstudent_datesORDERBYstu_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*fromstudent_datesORDERBYstu_dateDESC;

代码块的输出可以说明如下。

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 语句,我们可以有效地根据日期对特定表的记录进行排序。