1. 동명 동물 수 찾기
A. 문제
위 프로그래머스 사이트에 접속하여 문제를 확인해주세요.
B. 내 답안
-- Oracle
SELECT NAME, COUNT
FROM (
SELECT NAME, COUNT(NAME) AS COUNT
FROM ANIMAL_INS
GROUP BY NAME
ORDER BY NAME ASC
)
WHERE COUNT >= 2;
-- Oracle
SELECT NAME, COUNT(NAME) AS COUNT
FROM ANIMAL_INS
GROUP BY NAME
HAVING COUNT(NAME) >= 2
ORDER BY NAME ASC;
a. 회고
내 풀이
- 첫 번째 풀이로 풀었었다.
- 다들 나처럼 풀었나 하고서 검색을 좀 해보니, HAVING을 썼더라..
반성
- 난 HAVING을 까먹었었다...
결론
- HAVING을 포함해서 SELECT문의 동작 순서를 기억해두자.
-- Oracle
SELECT NAME, COUNT
FROM (
SELECT NAME, COUNT(NAME) AS COUNT
FROM ANIMAL_INS
GROUP BY NAME
ORDER BY NAME ASC
)
WHERE COUNT >= 2;
-- Oracle
SELECT NAME, COUNT(NAME) AS COUNT
FROM ANIMAL_INS
GROUP BY NAME
HAVING COUNT(NAME) >= 2
ORDER BY NAME ASC;
내 풀이
- 첫 번째 풀이로 풀었었다.
- 다들 나처럼 풀었나 하고서 검색을 좀 해보니, HAVING을 썼더라..
반성
- 난 HAVING을 까먹었었다...
결론
- HAVING을 포함해서 SELECT문의 동작 순서를 기억해두자.
FROM - WHERE - GROUP BY - HAVING - SELECT - ORDER BY
참고문헌
SELECT. 코딩테스트 연습 - 동명 동물 수 찾기 | 프로그래머스 (programmers.co.kr). Programmers. (accessed Sep 17, 2021)
Ghost