Mysql查询日期字段下不同的值,并将这些不同日期升序排列,排序结果不正确,请问如何解决呢?

我从系统中导出了仓库每个交货期的收货记录,一份excel是一个收货日期“CONS DATE”,并讲这些表导入了navicat,现在想查询出有多少个不同的"CONS DATE”,并将该字段下的不同值按照升序/降序排列。我的查询代码如下:

“SELECT DISTINCTCONS DATE FROM po-booking report ORDER BY CONS DATE ASC;”

执行结果中的日期确实都是不同的,但是排序结果不准确,图片说明图片说明

请问应该如何解决呢?

order by date_format(cons Date),先格式化时间,在排序

存放的不是日期格式,而是字符串格式?
建议改一下字段类型,再从excel导入。

字符串排序

1
12
3
4
这么排,没错。

ORDER BY CONS DATE ASC改为ORDER BY date(CONS DATE) ASC就可以了