首页 > 解决方案 > sql重复显示所有数据

问题描述

鉴于此数据

id  Name        group           

1   Jhon        001

2   Paul        002

3   Mary        001

如何获取显示所有字段的重复值?重复只在组上,id 和 name 不会重复。

最终应该看起来像其中之一(任何都是有效的):

:::::::::::::::::::::::::::::::::::::::::::::::
group  count values

001     2     1,3

:::::::::::::::::::::::::::::::::::::::::::::::
id  name        group
1   Jhon        001
3   Mary        001

我试过了

SELECT
    group, COUNT(*)
FROM
    people
GROUP BY
    group
HAVING 
    COUNT(*) > 1

但是,如果我尝试将 id 和 name 添加到 group by,它将找不到任何重复项。

提前致谢。

标签: sqlsql-server

解决方案


尝试这个。

SELECT Id, Name, [Group] 
FROM people
WHERE [Group] IN(
    SELECT [Group]
    FROM people
    GROUP BY [Group]
    HAVING COUNT(*) > 1)

推荐阅读