$result = mysql_query("
SELECT `runner`,`finished`
FROM `runs`
WHERE `gamename`='$_SESSION[game]'
ORDER BY finished ASC
");
结束是时间H:M:S.MS
它根本不排序。
以下是数据:
0:0:5.1
0:0:5.2
0:0:5.4
0:0:5.7
0:0:7.0
0:0:8.9
0:0:9.3
0:0:9.8
0:10:25.2
0:13:15.2
0:1:27.1
0:1:50.4
0:2:27.9
0:5:30.9
答案 0 :(得分:0)
您的订购可能会变得棘手,因为"已完成"是一个文本字段。尝试将其转换为您的订单中的日期字段:
...
ORDER BY STR_TO_DATE(finished, '%h:%i:%s.%f')
答案 1 :(得分:0)
这是一种方法,即使它有点复杂:
SELECT * FROM runs
ORDER BY
substring_index(finished, ':', 1),
substring_index(substring_index(finished, ':', 2), ':', -1),
substring_index(substring_index(finished, ':', -1), '.', 1),
substring_index(substring_index(finished, ':', -1), '.', -1)