0

问候希望在这里得到你的帮助,因为我一直在寻找这个。

此查询有效,但它不是我想要的更正确的结果,而不是我想要的正确日期格式。

SELECT DISTINCT colum FROM table WHERE colum IS NOT NULL

这个查询给了我日期

01.04.13
02.04.13
03.04.13
30.03.13
31.03.13

我希望它显示最新日期。

此信息发布在将信息存储为文本的列中。它以以下格式发布

dd.mm.yy

然后我希望它向我展示 03.04.13 的结果,因为这是今天的日期。我知道我可以将其限制为 1,但它仍然会显示错误的日期。

再次感谢您迄今为止的所有帮助

4

3 回答 3

3

首先,您不应将日期存储为字符串,而应将数据存储为 DateTime 数据类型。

由于您将其存储为字符串,因此您必须将其转换为日期才能获取max()日期值。以下使用该STR_TO_DATE()函数将字符串转换为日期以获取最大值:

select max(str_to_date(yourdate, '%d.%m.%y')) MaxDate
from table1

请参阅带有演示的 SQL Fiddle

于 2013-04-03T16:20:53.320 回答
0

1)您需要将 DATES 保存在日期或日期时间中

2) 在 MySQL 中尝试 MAX() 函数或尝试 ORDER BY date DESC 和 LIMIT 1

3)顺便说一句,您是否尝试过将 DISTINCT 与 GROUP BY 一起使用?

于 2013-04-03T16:23:24.023 回答
0

尝试

select distinct column from tab where column1 = date_format(curdate(),'%d.%m.%y') AND brukernavn is not null order by brukernavn;
于 2013-04-03T16:39:32.553 回答