2015-01-07 38 views
0

我想要一个mysql选择查询,它将从表中选择所有内容,并且还包含表中特定字段中存在的重复项的计数。这是一张表格和我想要的结果。Mysql返回整行的某些字段的重复项

TestTable 
    Id  Name  Dogs 
    1   Eric  1 
    2   Dave  2 
    3   Chris  4 
    4   Eric  3 

我想基于搜索具有重复名称的记录返回以下结果。

Id  Name  Dogs 
    1   Eric  1 
    4   Eric  3 

回答

2
select * from your_table 
where name in 
(
    select name 
    from your_table 
    group by name 
    having count(*) > 1 
) 
+0

谢谢你,效果很棒! – user2843198

1

尝试这个

SELECT 
a.Id,a.Name,a.Dogs, 
(SELECT count(b.Name) 
FROM TestTable b 
WHERE b.Name=a.Name) as totcount 
FROM TestTable a GROUP By a.Name; 

这将工作。

+0

@patel sahab做得好 –

+0

非常感谢! – user2843198