Mysql:Order By错误返回

时间:2015-02-24 16:22:56

标签: mysql sql-order-by

我想上次访问客户时最后一次访问我。

auto Table Structure:  
---id_auto
---client_id

auto_problems Table Structure
--id_auto
--add_date  

使用查询

"SELECT add_date
FROM auto_problems
LEFT JOIN auto ON auto_problems.id_auto = auto.id_auto
WHERE client_id = 466
ORDER BY `auto_problems`.`add_date` ASC"

查询返回:

01/07/2014
04/03/2014 **<<<---- ???**
11/04/2014
16/09/2014

为什么ODER BY add_date ASC不起作用?

1 个答案:

答案 0 :(得分:2)

您必须将表示日期的字符串转换为日期:

SELECT add_date
FROM auto_problems
LEFT JOIN auto ON auto_problems.id_auto = auto.id_auto
WHERE client_id = 466
ORDER BY STR_TO_DATE(`auto_problems`.`add_date`,'%d/%m/%Y') ASC

但是您应该将数据类型更改为date。这是一种更好的做法。