2025.01.14(Tue.)
[오늘의 알고리즘 1문제] - 프로그래머스 MySQL
<동명 동물 수 찾기>
동물 보호소에 들어온 동물 이름 중 두 번 이상 쓰인 이름과 해당 이름이 쓰인 횟수를 조회하는 SQL문을 작성해주세요. 이때 결과는 이름이 없는 동물은 집계에서 제외하며, 결과는 이름 순으로 조회해주세요.
- Raven 이름은 2번 쓰였습니다.
- Lucy 이름은 3번 쓰였습니다
- Shadow 이름은 1번 쓰였습니다.
따라서 SQL문을 실행하면 다음과 같이 나와야 합니다.
| NAME | COUNT |
| Lucy | 3 |
| Raven | 2 |
<내가 쓴 답>
SELECT NAME,
COUNT(NAME) AS COUNT
FROM ANIMAL_INS
GROUP BY NAME
HAVING COUNT >=2
ORDER BY NAME
정답입니다.
<체크해야 할 개념>
Having 절은 그룹에 대한 검색 조건을 지정할 때 사용한다.
Group by 절과 함께 사용되어 지정된 조건에 따라 그룹을 필터링 해준다.
Group by 절 바로 다음에 나온다.
Where 절은 지정된 조건에 따라 행을 필터링 하는 것이나,
Having 절은 지정된 조건에 따라 행 그룹을 필터링 해준다.
'Develop > Daily Algorithm Practice 공략집' 카테고리의 다른 글
| [오늘의 알고리즘 1문제] - <상위 n개 레코드> (0) | 2025.01.21 |
|---|---|
| [오늘의 알고리즘 1문제] - <아픈 동물 찾기> (0) | 2025.01.15 |
| [오늘의 알고리즘 1문제] - <동물 수 구하기> (0) | 2025.01.13 |
| [오늘의 알고리즘 1문제] - <동물 아이디와 이름> (0) | 2025.01.10 |
| [오늘의 알고리즘 1문제] - <중복 제거하기> (0) | 2025.01.09 |