📝 Language: Oracle
1
2
3
4
5
6
7
8
|
SELECT ANIMAL_TYPE,
COUNT(ANIMAL_TYPE) COUNT
FROM ANIMAL_INS
GROUP BY ANIMAL_TYPE
HAVING ANIMAL_TYPE IN ('Cat', 'Dog')
ORDER BY ANIMAL_TYPE
;
|
🙂 확인 사항
1. ANIMAL_INS 테이블
2. 고양이와 개 각각 몇 마리인지 조회
3. 고양이보다 개를 먼저 조회
😮 이 외의 풀이
1
2
3
4
5
6
7
8
|
SELECT ANIMAL_TYPE,
COUNT(ANIMAL_TYPE) COUNT
FROM ANIMAL_INS
WHERE ANIMAL_TYPE = 'Cat' OR ANIMAL_TYPE = 'Dog'
GROUP BY ANIMAL_TYPE
ORDER BY ANIMAL_TYPE
;
|
- 그룹 조건절 HAVING 대신 WHERE 사용
- IN 대신 OR 사용
⭐ HAVING과 WHERE
데이터를 필터링하거나 조작하는 데 사용
HAVING
- 그룹화된 결과에 대한 조건을 지정하는 데 사용
- 집계 함수 (예: COUNT, SUM) 등을 사용하여 그룹화된 결과에 대한 조건을 지정하는 데 주로 사용
HAVING
- WHERE 절은 행 수준의 조건을 지정하는 데 사용되며, 특정 열의 값을 비교하거나 특정 조건을 만족하는 행을 필터링
- 데이터베이스 테이블에서 특정 행을 선택할 때 사용하며, 그 결과로 나온 행들 중에서 그룹화나 집계를 하기 전에 조건을 적용
* WHERE절은 데이터베이스에서 레코드를 검색하기 전에 필터링을 수행하므로 검색되는 레코드의 수가 줄어들어 더 효율적
= 불필요한 데이터를 "GROUP BY" 및 "COUNT" 작업에서 제거하므로 쿼리 성능이 향상
⭐⭐ 데이터를 필터링할 때는 "WHERE" 절을 사용하고, 집계된 결과에 대한 조건을 지정할 때 "HAVING" 절을 사용
🔗 소스 코드
GitHub
'Computer > Algorithm_SQL' 카테고리의 다른 글
[Programmers] 루시와 엘라 찾기 (Success) (0) | 2023.09.21 |
---|---|
[Programmers] 동명 동물 수 찾기 (Success) (0) | 2023.09.20 |
[Programmers] 최솟값 구하기 (Success) (0) | 2023.09.18 |
[Programmers] 조건에 부합하는 중고거래 댓글 조회하기 (Success) (0) | 2023.09.17 |
[Programmers] 특정 옵션이 포함된 자동차 리스트 구하기 (Success) (0) | 2023.09.16 |