如何编写sql查询来过滤其他列值相同的id?

问题描述 投票:0回答:1

我有以下 SQL 表:

id        fid        val 
200       995        XXLL
200       996        XXLL
201       995        OOOP
201       996        OOOS
202       995        OKIL
202       996        OKIL
203       995        LLLL
203       996        CCCC

我想做的是获取所有 995 和 996 的值相同的

id

所以在上面的例子中,我希望sql查询的输出只是200, 202,因为201和203的995和996值是不同的!

我希望以上内容有意义,非常感谢任何帮助!

sql postgresql
1个回答
0
投票

也许是这样的:

SELECT q2.id, qr2.fid
(SELECT id, val, count(1)
FROM table_1
GROUP BY id, val
HAVING count(1) > 1) qr1
JOIN
(SELECT id, fid
FROM table_1) qr2
ON qr1.id = qr2.id;
© www.soinside.com 2019 - 2024. All rights reserved.