gpt4 book ai didi

MySQL 按组加入

转载 作者:行者123 更新时间:2023-11-29 18:27:22 24 4
gpt4 key购买 nike

我正在尝试根据分数和年份匹配两个表,以查找哪些 id 属于一起。我编了下面的例子:

表a:

  id | score | year
1 0 2000
1 1 2001
1 2 2002

表b:

id_match | score_match | year
10 0 2000
10 1 2001
10 2 2002
20 0 2000
20 0 2001
20 2 2002

id_match = 10 在所有年份中与 id = 1 具有相同的分数,而对于 id_match = 20,它在 Year = 2001 中有所不同。我只想匹配在所有年份中具有完全相同分数的 id。

输出表如下所示:

id | id_match
1 10

我想这是一个相对简单的查询。我在想这样的事情:

SELECT a.id, b.id_match
FROM a
LEFT JOIN b
ON a.score = b.score
AND a.year = b.year
GROUP BY a.id, b.id_match;

但是,只有当 id 和 id_match 的分数在所有年份都相等时,我才希望进行匹配。

预先感谢您的帮助!

最佳答案

我想你想要:

SELECT b.id_match
FROM a JOIN
b
ON a.year = b.year
GROUP BY b.id_match
HAVING SUM(a.score <> b.score_match) = 0;

关于MySQL 按组加入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46054011/

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