본문 바로가기
IT

[Oracle] GROUP BY ,Having 이해를 위한 SQL 연습 문제

by 결국 그렇고 그런이야기 2021. 10. 17.
반응형

사실 Group by 까지는 많이 쓰지만 그 Group by를

다시 조건을 거는 Having 절은 실무에서 거의 사용해 본적이 없지만

이론을 배우기 위해서는 이런 것도 있으니 참고하면 좋을 것 같아서 정리해본다.

 

 

SQL SELECT 문제 :

동물 보호소에 들어온 동물 이름 중 두번 이상 쓰인 이름과 해당 이름이 쓰인 횟수를 조회하는 SQL문을 작성해주세요. 이때 결과는 이름이 없는 동물은 집계에서 제외하며, 결과는 이름 순으로 조회해주세요.

 

Table : ANIMAL_INS 

 

실행 결과

 


정답 :

count() 함수는 집계함수라 group by 절과 사용이 가능하고

where 절안에서 Count() 함수를 사용할 수는 없어서 Having절로 조회하도록 유도한 문제.

약간은 학문을 위한 쿼리랄까?

 

   SELECT NAME, COUNT(NAME) AS COUNT
     FROM ANIMAL_INS
    WHERE NAME IS NOT NULL
 GROUP BY NAME
   HAVING COUNT(NAME) > 1
 ORDER BY NAME;

 

반응형

'IT' 카테고리의 다른 글

not exists 와 except 생물학 문제  (0) 2021.10.18
Inner Join, Outer Join  (0) 2021.10.17
Fast Campus 강의 추천 | 데이터베이스와 SQLD 합격패스  (0) 2021.10.17
MySQL 8.0.20 Version  (0) 2021.10.09
레디스[Redis] 실사용 사례 정리  (0) 2021.09.24

댓글