如何在MySQL中按时间戳排序?

要按时间戳排序,请按照以下语法使用ORDER BY-

select *from yourTableName ORDER BY STR_TO_DATE(`yourColumnName`,'%m/%d/%Y%h:%i:%s %p');

让我们首先创建一个表-

create table DemoTable
    (
    `timestamp` varchar(100)
    );

使用插入命令在表中插入一些记录-

insert into DemoTable values('06/22/2019 01:10:20 PM');

insert into DemoTable values('06/22/2019 12:00:27 PM');

insert into DemoTable values('06/22/2019 06:56:20 AM');

insert into DemoTable values('06/22/2019 07:10:11 AM');

使用select语句显示表中的所有记录-

select *from DemoTable;

输出结果

这将产生以下输出-

+------------------------+
| timestamp              |
+------------------------+
| 06/22/2019 01:10:20 PM |
| 06/22/2019 12:00:27 PM |
| 06/22/2019 06:56:20 AM |
| 06/22/2019 07:10:11 AM |
+------------------------+
4 rows in set (0.00 sec)

以下是在MySQL中按时间戳排序的查询-

select *from DemoTable ORDER BY STR_TO_DATE(`timestamp`,'%m/%d/%Y%h:%i:%s %p');

输出结果

这将产生以下输出-

+------------------------+
| timestamp              |
+------------------------+
| 06/22/2019 06:56:20 AM |
| 06/22/2019 07:10:11 AM |
| 06/22/2019 12:00:27 PM |
| 06/22/2019 01:10:20 PM |
+------------------------+
4 rows in set (0.00 sec)