gpt4 book ai didi

MySQL按某种类型分组并选择最新的行?

转载 作者:可可西里 更新时间:2023-11-01 08:37:39 25 4
gpt4 key购买 nike

想象一个包含列类型、日期、消息的表格。有些行看起来像这样(类型 | 日期 | 消息):

1 | 1310572318 | Hello
1 | 1310572317 | Hi
2 | 1310572315 | Wassup
3 | 1310572312 | Yo
3 | 1310572311 | Hey
3 | 1310572309 | Eyo
1 | 1310572305 | Hello
1 | 1310572303 | Good Day

是否可以按类型对它们进行分组,并选择最新的(按日期排序)以便结果为:

1 | 1310572318 | Hello
2 | 1310572315 | Wassup
3 | 1310572312 | Yo
1 | 1310572305 | Hello

我很确定我必须使用一些 MySQL 聚合函数,但我不太擅长它们,所以我在这里寻求一点帮助。

最佳答案

没有aggregate可以使用不同的列,以便您可以获得最新日期的消息。

这可能会有所帮助:

SELECT 
`type`,
MAX(`date`) AS `max_date`,
(SELECT `t2`.`message` FROM `table` AS `t2` WHERE `t2`.`type` = `t1`.`type` ORDER BY `t2`.`date` DESC LIMIT 1)
FROM `table` AS `t1`
GROUP BY `type`

关于MySQL按某种类型分组并选择最新的行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6693796/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com