4

我在表格中有一行以上午/下午格式保存一天中的时间,例如

timeField
---------
9.00am
10.00pm
7.00am 
etc...

mysql中有没有办法对这些值进行排序?

4

4 回答 4

16

您可以通过在 MySQL 中使用STR_TO_DATE函数来做到这一点:

SELECT STR_TO_DATE('10.00pm','%h.%i%p');

尝试这个:

SELECT * 
FROM table_name 
ORDER BY STR_TO_DATE(timeField,'%h.%i%p');

示例:SQLFiddle

于 2012-10-18T10:34:13.717 回答
1

为了订购它,您需要格式化日期字段。

尝试这个

SELECT COl1, COl2, DATE_FORMAT(yourdate, '%k:%i:%s') AS mydate
FROM your_table
ORDER BY mydate 

享受

于 2012-10-18T10:37:49.463 回答
1

使用下面的查询

select * from 'Your Table Name' order by str_to_date('yourtimefield', '%l:%i %p');
于 2019-12-24T12:43:46.697 回答
0
SELECT * FROM table ORDER BY Name

这为我安排了一切:按字母顺序排列,日期和时间

于 2014-11-01T05:34:01.123 回答