Php mysql服务器返回错误的结果

Php mysql服务器返回错误的结果,php,mysql,date,Php,Mysql,Date,这很奇怪,我四处看了很多,有人能确认这是mysql服务器的bug吗 MySQL表有ID和日期字段200多条记录,日期各不相同,很少是今天的日期 此查询: SELECT id, MAX(date_format('date', '%d-%m-%Y %H:%i')) AS mymaxdate from mytable1 返回错误的日期!大约10天前 在使用时: SELECT id, max('date') AS mymaxdate from mytable1 工作正常,但返回yyyy-mm-dd

这很奇怪,我四处看了很多,有人能确认这是mysql服务器的bug吗

MySQL表有ID和日期字段200多条记录,日期各不相同,很少是今天的日期

此查询:

SELECT id, MAX(date_format('date', '%d-%m-%Y %H:%i')) AS mymaxdate 
from mytable1
返回错误的日期!大约10天前

在使用时:

SELECT id, max('date') AS mymaxdate from mytable1
工作正常,但返回yyyy-mm-dd g:i:a中的日期

我的需要很简单,在dd-mm-yyy中选择最晚的最大日期


有人面对过这个问题吗?

因为你正在承受最大的压力。既然您首先获得了每日价值:

'31-01-1900' > '01-01-2014'
是真的,因为31>01

你可能想要

SELECT id, DATE_FORMAT(MAX(date), '%....')
相反。

您选择的是按天数、月份、年份排序的格式化日期的最大值。对此进行排序将产生无序结果

您需要做的是将格式移动到PHP,而不是MySQL。您的数据库应该主要关注数据。PHP可以处理重写数据以满足您的演示需要,方法如下