如何在使用ORDER BY时按顺序显示sql日期?

时间:2017-05-31 04:58:43

标签: php sql

我正在尝试按从小到大的顺序显示以下日期。

它们以这种方式存储。

02-12-15
02-11-13
12-20-12
12-12-12
05-12-17

这是我使用的以下代码

"SELECT ledate FROM `points_bar` WHERE student_id = '$studentID' ORDER BY ledate ASC"; 

这就是我想要将其转化为。

02-11-13
12-20-12
12-12-12
02-12-15
05-12-17

有人可以向我指出一个可能的解决方案或者给我一点推动吗?

2 个答案:

答案 0 :(得分:2)

您的日期不是支持mysql的日期格式。它被视为varchar。如下更改SQL应该有效。

"SELECT ledate FROM `points_bar` WHERE student_id = '$studentID' ORDER BY STR_TO_DATE(`ledate`, '%m-%d-%y') ASC";

请参阅STR_TO_DATE

答案 1 :(得分:0)

刚出演ledate作为约会......

 SELECT ledate FROM `points_bar` 
 WHERE student_id = '$studentID' 
 ORDER BY cast(ledate as date) ASC