gpt4 book ai didi

MySQL:选择具有最后一条记录的id的组的计数

转载 作者:行者123 更新时间:2023-11-29 10:12:49 24 4
gpt4 key购买 nike

这是我的表,名为logs:

id    package    log
====================
0 first log0
1 first log1
2 second log2

我希望查询结果是这样的:

package    count    last_log_id
===============================
first 2 1
second 1 2

到目前为止,我的搜索使我发现了这一点:

SELECT package, COUNT(*) FROM logs GROUP BY package

这帮助我按包获取每个组的计数。

SELECT a1.package, COUNT(*),a1.id 
FROM logs a1 LEFT JOIN logs a2
ON (a1.package = a2.package AND a1.id < a2.id)
WHERE a2.id IS NULL
GROUP BY a1.package

这帮助我获取了最后一条日志的 ID,但是计数错误!

package    count    last_log_id
===============================
first 1 1
second 1 2

最佳答案

我认为你的第一次尝试是正确的,你可以使用MAX函数来查找每个包的最新日志id:

SELECT
package,
COUNT(*) AS count,
MAX(id) AS last_log_id
FROM logs
GROUP BY package;

关于MySQL:选择具有最后一条记录的id的组的计数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50667361/

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