Mysql 如何使用我的sql查询对表中的时间进行排序

Mysql 如何使用我的sql查询对表中的时间进行排序,mysql,sql,Mysql,Sql,如何对表格进行时间排序。从早上6点到晚上10点 name source destination time gokul xxx yyyy 10.00 PM abc xxx yyyy 6.00 AM 我在side子查询中尝试了此查询,但仍然不起作用 Select * from ( Select * from trips where date = '27-09-2013' and time like '%PM' or '%p

如何对表格进行时间排序。从早上6点到晚上10点

 name    source destination time 
 gokul   xxx    yyyy        10.00 PM
 abc     xxx    yyyy        6.00 AM
我在side子查询中尝试了此查询,但仍然不起作用

Select * from (
  Select * from trips where date = '27-09-2013' 
  and time like '%PM' or '%pm' ORDER BY time
) AND (
  Select * from trips where date = '27-09-2013' 
  and time like '%AM' or '%am' ORDER BY time
) AS TIME 
ORDER BY TIME(time) DESC' 
使用此查询:

SELECT * FROM tabel_name 
    ORDER BY STR_TO_DATE(`time`,'%h.%i%p');
工作示例

编辑:

看到您的查询后,我将为您发布修改后的查询

SELECT * FROM trips 
    WHERE `date` = '27-09-2013' 
       AND ((`time` like '%PM' OR '%pm') 
          OR (`time` like '%AM' OR '%am')) ORDER BY STR_TO_DATE(`time`,'%h.%i%p') DESC

时间是字符串形式的,有AM和PM吗?还是实际的时间戳形式?它是varchar@AdrianBR,我试着按顺序排序,但不是wokring@gokul你也可以发布你的表格结构吗。