Number of individual lines with duplicate email identifiers

How to get the number of rows with duplicate email ids in SQL?

ID NAME EMAIL 1 John asd@asd.com 2 Sam asd@asd.com 4 Bob bob@asd.com 5 Tom asd@asd.com 6 Rob bob@asd.com 7 Tic tic@asd.com 8 Dad dad@asd.com 

The request should return 2. asd@asd.com and bob@asd.com are duplicates

 SELECT COUNT(*) FROM Users GROUP BY EMail HAVING ( COUNT(EMAIL) > 1 ) 

This query returns some wierd results. Thanks

+4
source share
1 answer

Number of lines:

 select sum(cnt) from (select count(*) as cnt from Users group by email having count(*) > 1) T 

Number of letters:

 select count(*) from (select count(*) as cnt from Users group by email having count(*) > 1) T 

Both at once:

 select count(*) as COUNT_EMAIL sum(cnt) as COUNT_ROWS from (select count(*) as cnt from Users group by email having count(*) > 1) T 

Above should work on SQL Server and Oracle.

+6
source

Source: https://habr.com/ru/post/1316446/


All Articles