문제 설명
Duplicate Emails는 Person 테이블에서 중복된 이메일을 찾는 거임.
- email 컬럼에서 두 번 이상 등장하는 이메일만 리턴.
- 결과는 Email이라는 컬럼 이름으로 출력.
- 테이블 구조:
- Person: id (PK), email.
- EX:
- {id: 1, email: "a@b.com"}, {id: 2, email: "c@d.com"}, {id: 3, email: "a@b.com"} 있으면,
- "a@b.com"이 두 번 나왔으니까 결과는 "a@b.com".
푼 과정
- 중복된 이메일을 찾으려면 같은 email이 몇 번 나왔는지 세야 함.
- GROUP BY email로 이메일별 그룹 만들고, COUNT로 각 그룹의 행 수 셈.
- HAVING으로 횟수가 2 이상인 그룹만 남김.
- 마지막으로 email을 EMAIL로 출력.
- 쿼리 간단하고, SQL의 GROUP BY와 HAVING 활용
SELECT email AS EMAIL
FROM Person
GROUP BY Person.email
HAVING COUNT(Person.email) > 1;
'leetcode , 백준' 카테고리의 다른 글
[재귀,반복문] LeetCode 206번 문제 학습 (0) | 2025.04.22 |
---|---|
[재귀,반복문] LeetCode 203번 문제 학습 (0) | 2025.04.22 |
[SQL] LeetCode 181번 문제 학습 (0) | 2025.04.15 |
[SQL] LeetCode 175번 문제 학습 (0) | 2025.04.15 |
[정렬] LeetCode 169번 문제 학습 (0) | 2025.04.15 |