이 문제는 GROUP BY
문을 이용하여 그룹화 된 결과 값에 조건을 추가하는 것이 핵심인 문제이다. 문제를 살펴보면,
'동물 이름 중 두 번 이상 쓰인 이름과 해당 이름이 쓰인 횟수를 조회하는 SQL문을 작성'
Bold 처리된 문구가 핵심이다. HAVING
문을 이용하면 GROUP BY
를 통해 그룹화 된 결과 값에 조건을 걸 수 있다.
SELECT
NAME, COUNT(*) AS COUNT
FROM
ANIMAL_INS
GROUP BY
NAME
HAVING COUNT(NAME)>=2 ORDER BY NAME
: ANIMAL_INS
테이블에서 NAME
, COUNT
를 출력한다.
단(GROUP BY)
, NAME
속성을 내장함수를 이용, 그룹화 하여 출력한다.
또한(HAVING)
, NAME
속성을 COUNT
한 값이 2보다 같거나 커야 출력한다.
또한(ORDER BY)
, NAME
속성을 기준으로 정렬하여 출력한다.