Mysql SQL中的重复项列表

Mysql SQL中的重复项列表,mysql,sql,Mysql,Sql,我有一个包含以下列的表: ID Link price 列链接中有一些重复项,如何获得重复项列表 我的问题是: SELECT * FROM tbl WHERE Link IN (SELECT Link FROM tbl GROUP BY Link HAVING CONT(*) > 1; 它返回所有重复的字段,但我需要列出它们,这样我就可以看到所有重复的字段。试试这个: SELECT Link FROM tbl GROUP BY Link HAVING COUNT(*) &g

我有一个包含以下列的表:

ID
Link
price
列链接中有一些重复项,如何获得重复项列表

我的问题是:

SELECT * 
FROM tbl
WHERE Link
IN
(SELECT Link
FROM tbl
GROUP BY Link
HAVING CONT(*) > 1;
它返回所有重复的字段,但我需要列出它们,这样我就可以看到所有重复的字段。

试试这个:

  SELECT Link
    FROM tbl
GROUP BY Link
HAVING COUNT(*) > 1
你可以这样做:

SELECT Link, COUNT(*)
FROM tbl
GROUP BY Link
HAVING COUNT(*)>1
在MySQL中,您甚至可以从SELECT中省去COUNT*

SELECT Link
FROM tbl
GROUP BY Link
HAVING COUNT(*)>1

如果您想要整行,那么我建议:

select t.*
from tbl t
where exists (select 1
              from tbl t2
              where t2.link = t.link and t2.id <> t.id
             );

这假设id是唯一的,这似乎是一个合理的假设。

添加一些示例表数据和预期结果-作为格式化文本,而不是图像。顺便说一句,表有列,而不是字段。可能与查询没有提供的内容重复?您需要另一列重复计数吗?或者什么?它只返回一行,其中包含重复项,但我需要获取所有重复项,如:ID1 LINK1 PRISE1;ID2 LINK1 PRISE2;ID3 LINK3 PRISE3;ID4 LINK3 PRISE4;单独的子查询将生成相同的结果。它只返回一行,其中包含重复项,但我需要获取所有重复项,如:ID1 LINK1 PRISE1 ID2 LINK1 PRISE2 ID3 LINK3 PRISE3 ID4 LINK3 Prise4在这种情况下,问题中的查询将生成您想要的结果,您只是缺少右括号。原始查询的输出有什么问题?它返回的结果如下:ID1 LINK1 PRISE1;ID3 LINK3 PRISE3;但不是所有列表。那么所有列表是什么样的呢;ID2 LINK1 PRISE2;ID3 LINK3 PRISE3;ID4 LINK3 PRISE4;