选择数据并在所选记录中查找重复值的 sql 查询
Posted
技术标签:
【中文标题】选择数据并在所选记录中查找重复值的 sql 查询【英文标题】:sql query that select data and find duplicate values in selected records 【发布时间】:2015-08-21 06:48:22 【问题描述】:我正在尝试创建一个将以下两个查询组合在一起的查询。
第一个查询:
select * from mutual_friends where fb_id =8807531 OR fb_id=102061
第二个查询:
SELECT name,picture, COUNT(picture)
FROM mutual_friends
GROUP BY picture
HAVING ( COUNT(picture) > 1 )
第一次查询选择两个id的数据,然后第二次查询在图片列中查找重复项
我想要使用单个查询的结果
如果有人能帮助我解决这个问题,我将非常感激
【问题讨论】:
如果你想要两个查询结果集,为什么你不能去简单的联合 要同时在所有 RDBMS 上工作? 【参考方案1】:SELECT name,picture, COUNT(picture)
FROM mutual_friends
where fb_id = 8807531 OR fb_id = 102061
GROUP BY picture
HAVING ( COUNT(picture) > 1 )
【讨论】:
【参考方案2】:如果您正在寻找所有带有重复图片的 id.. 那么我建议您的答案为
SELECT fb_id, name, picture
FROM mutual_friends
WHERE picture IN (
SELECT picture
FROM mutual_friends
GROUP BY picture
HAVING COUNT(picture) > 1)
或者更具体一些,因为您的问题没有清楚地解释您在寻找什么。
【讨论】:
【参考方案3】:你可以这样做:
SELECT name,picture, COUNT(picture)
FROM mutual_friends
WHERE fb_id = 8807531 OR fb_id = 102061
GROUP BY picture
HAVING ( COUNT(picture) > 1 )
【讨论】:
以上是关于选择数据并在所选记录中查找重复值的 sql 查询的主要内容,如果未能解决你的问题,请参考以下文章