作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有一个包含 ID、AID 和年份字段的表。如何找到集合中最新的共同年份(共同的AID组成一个集合)
ID AID Year
---------
1 1 2001
2 1 2002
3 1 2003
4 1 2004
5 2 2003
6 2 2004
7 2 2005
8 3 2004
9 3 2005
10 3 2006
最近的普通年份 2004
最佳答案
我相信这是最简单的方法。
查询
SELECT
Year
FROM
t
GROUP BY
Year
HAVING
COUNT(*) = (SELECT COUNT(DISTINCT t.AID) FROM t)
结果
| Year |
| ---- |
| 2004 |
参见demo
此查询使其工作原理更加明显
查询
SELECT
Year
, COUNT(*) AS count_per_AID
, (SELECT COUNT(DISTINCT t.AID) FROM t) AS unique_count_per_AID
, (COUNT(*) = (SELECT COUNT(DISTINCT t.AID) FROM t)) AS most_common_value
FROM
t
GROUP BY
Year
结果
| Year | count_per_AID | unique_count_per_AID | most_common_value |
| ---- | -------------- | -------------------- | ----------------- |
| 2001 | 1 | 3 | 0 |
| 2002 | 1 | 3 | 0 |
| 2003 | 2 | 3 | 0 |
| 2004 | 3 | 3 | 1 |
| 2005 | 2 | 3 | 0 |
| 2006 | 1 | 3 | 0 |
This query returns all the common years and not the latest common year.
确实感谢您发表评论。
修复方法是使用查询
SELECT
Year
FROM
t
GROUP BY
Year
HAVING
COUNT(*) = (SELECT COUNT(DISTINCT t.AID) FROM t)
ORDER BY
t.Year DESC
LIMIT 1
;
参见demo
关于mysql - 如何使用 MySQL 查询从集合中获取共同值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55777553/
所以,我有一个类似于 this one 的用例,但我觉得有一些额外的细节值得提出一个新问题。 ( related questions ,供引用) 我正在编写一个实现 a cycle 的数据结构.基本设
我正在使用 Django 编写一个社交网络应用程序,需要实现类似于 Facebook“Mutual Friends”概念的功能。我有一个像这样的简单模型: class Friend(models.Mo
我有一个 iOS 应用程序,用户可以在其中使用 Facebook 登录并授予 user_friends 权限。从 Graph API 2.0 开始,Facebook 声称你无法获取两个人之间所有的共同
我想知道将来对我来说最简单的方法是什么,可以使查询既有效又不那么复杂。 我应该像这样保存双向关系吗 from_id=1, to_id=2from_id=2, to_id=1 或者只创建一个唯一的行 f
我是一名优秀的程序员,十分优秀!