if i have data like this:
Key Name
1 Dan
2 Tom
3 Jon
4 Tom
5 Sam
6 Dan
What is the sql query to bring back the records where the Name is repeated 2 or more times.
So the result i would want is
Tom
Dan
if i have data like this:
Key Name
1 Dan
2 Tom
3 Jon
4 Tom
5 Sam
6 Dan
What is the sql query to bring back the records where the Name is repeated 2 or more times.
So the result i would want is
Tom
Dan
Couldn't be simpler...
Select
Name,
Count(Name) As Count
From
Table
Group By
Name
Having
Count(Name) > 1
Order By
Count(Name) Desc
This could also be extended to delete duplicates:
Delete
From
Table
Where
Key In (
Select
Max(Key)
From
Table
Group By
Name
Having
Count(Name) > 1)
This could also be accomplished by joining the table with itself,
SELECT DISTINCT t1.name
FROM tbl t1
INNER JOIN tbl t2
ON t1.name = t2.name
WHERE t1.key != t2.key;