php mysql按时间戳排序不正确
我有如下数据库记录php mysql按时间戳排序不正确,php,mysql,timestamp,Php,Mysql,Timestamp,我有如下数据库记录 Name Date(timestamp) Time(timestamp) 我想按时间顺序订购,但它显示的顺序不正确。它现在显示: Name 19:00 Other 18:30 One more 19:00 正如你所看到的,时间不是从最早到最晚。我希望它是这样的: Other 18:30 Name 19:00 One more 19:00 SELECT timestamp( `timestamp` ) as 'timestamp' FROM randomTable ORD
Name Date(timestamp) Time(timestamp)
我想按时间顺序订购,但它显示的顺序不正确。它现在显示:
Name 19:00
Other 18:30
One more 19:00
正如你所看到的,时间不是从最早到最晚。我希望它是这样的:
Other 18:30
Name 19:00
One more 19:00
SELECT timestamp( `timestamp` ) as 'timestamp'
FROM randomTable
ORDER BY 1 ASC;
我做错了什么
SELECT * FROM table WHERE date='".$date."' ORDER BY book_time DESC
尝试使用Timestamp()指定希望从中提取数据的字段作为时间戳
大概是这样的:
Other 18:30
Name 19:00
One more 19:00
SELECT timestamp( `timestamp` ) as 'timestamp'
FROM randomTable
ORDER BY 1 ASC;
如果您可以发布输出的屏幕截图以使问题更清楚,那就太好了。您确定只选择您想要的日期吗?因为我认为选择多个日期并不仅仅是一个 同样,对于您想要的,您需要使用ASC而不是DESC 因为我已经尝试过了,这对我来说很有用。这是我的简单代码:
$sql = "SELECT * FROM test WHERE date = '2016-02-10' ORDER BY time ASC";
$res = $DB->query($sql);
while($enr = $res->fetch()){
var_dump($enr);
}
使用此数据库:
结果是:
array (size=8)
'id' => string '4' (length=1)
0 => string '4' (length=1)
'date' => string '2016-02-10' (length=10)
1 => string '2016-02-10' (length=10)
'time' => string '01:00:07' (length=8)
2 => string '01:00:07' (length=8)
array (size=8)
'id' => string '3' (length=1)
0 => string '3' (length=1)
'date' => string '2016-02-10' (length=10)
1 => string '2016-02-10' (length=10)
'time' => string '02:03:05' (length=8)
2 => string '02:03:05' (length=8)
结果是按您想要的ASC顺序排列
希望这能对您有所帮助。我不理解这个例子,请您改进一下好吗?您能为这个问题设置一个演示程序吗?它正是我上面发布的内容。我希望看到列表中的第一个18:30,而不是19:00。要查看整个响应,请看这里: