gpt4 book ai didi

mysql - 获取包含在表中找到最少次数的项目的列表

转载 作者:行者123 更新时间:2023-11-29 01:13:22 25 4
gpt4 key购买 nike

我有一个 MySQL 表,其中有一个特定的 ID 作为来自另一个表的外键。这个 id 不是这个表唯一的,所以我可以有很多记录持有相同的 id。我需要找出哪些 ID 在此表中出现的次数最少,然后拉出一个包含它们的列表。

例如,如果我有5条id=1的记录,3条id=2的记录和3条id=3的记录,我只想拉出ids 2和3。但是,表中的数据变化很大通常,我不知道在任何给定时刻最小值是多少。如果我使用两个查询,但我试图只用一个查询,那么这项任务就很简单了。这是我拥有的:

SELECT id
FROM table
GROUP BY id
HAVING COUNT(*) = MIN(SELECT COUNT(*) FROM table GROUP BY id)

如果我替换 COUNT(*) = 3,结果就会出现,但使用上面的查询会给我一个错误,即 MIN 没有被正确使用。有什么建议吗?

最佳答案

我会尝试:

SELECT id
FROM table
GROUP BY id
HAVING COUNT(*) = (SELECT COUNT(*) FROM table GROUP BY id ORDER BY COUNT(*) LIMIT 1);

这会从一组按升序排列的计数中选择第一行的最小值。

关于mysql - 获取包含在表中找到最少次数的项目的列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24959376/

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