정답 : 4번
1) 집계함수의 통계 정보는 NULL 값을 가진 행을 포함 하여 수행한다. (X)
-> SUM 함수는 NULL 값을 가진 행을 제외하고 수행된다.
2) GROUP BY 절에서는 SELECT 절과 같이 ALIAS 명을 사용할 수 있다. (X)
-> ALIAS(별칭)는 SELECT 절에서 정의된 경우, GROUP BY 절에서는 사용할 수 없다.
3) 집계 함수는 WHERE 절에도 올 수 있다. (X)
-> 집계 함수 조건은 반드시 HAVING 절에 사용해야 한다.
-> WHERE 절은 집계 함수를 사용할 수 없다.
4) HAVING 절은 일반적으로 GROUP BY 절 뒤에 위치한다. (O)
HAVING 절은 GROUP BY 절에 의한 그룹화 이후에 적용되는 조건절로, 일반적으로 GROUP BY 절 뒤에 위치한다.
순서
SELECT
FROM
WHERE
GROUP BY
HAVING
[요약 설명]
이 문제는 GROUP BY와 HAVING 절의 기능과 특징을 이해하고 있는지를 평가함.
특히 집계 함수의 동작 방식, 절의 위치 및 사용 규칙을 정확히 파악하는 것이 필요함.
[이론적 내용]
1. GROUP BY 절
- SELECT 문의 결과를 그룹으로 묶어 집계함수(SUM, AVG, COUNT 등)를 적용함
- ex) SELECT 부서, COUNT(*) FROM 직원 GROUP BY 부서;
- ALIAS(별칭)는 SELECT 절에서 정의된 경우, GROUP BY 절에서는 사용할 수 없음
2. HAVING 절
- 그룹화된 결과에 조건을 적용할 때 사용됨
- ex) SELECT 부서, COUNT(*) FROM 직원 GROUP BY 부서 HAVING COUNT(*) > 5;
- 일반적으로 GROUP BY 절 뒤에 위치하며, 집계함수 조건을 포함할 수 있음
3. 집계 함수와 NULL 값
- 집계 함수는 기본적으로 NULL 값을 무시하고 수행됨
- ex) SUM(NULL, 10, 20)의 결과는 30임
4. WHERE 절과 집계함수
- WHERE 절은 그룹화 이전에 조건을 적용하며, 집계함수를 사용할 수 없음
- 집계함수 조건은 반드시 HAVING 절에 사용해야 함
'Data Engineering' 카테고리의 다른 글
[SQLD 자격검정 실전문제] Part 2-1. 66번 SQL 실행결과 찾기(ORACLE) (0) | 2025.05.30 |
---|---|
[SQLD 자격검정 실전문제] Part 2-1. 65번 SQL 실행 결과 찾기 (0) | 2025.05.30 |
[SQLD 자격검정 실전문제] Part 2-1. 63번 SQL 실행결과 다른 것 찾기 (0) | 2025.05.29 |
[SQLD 자격검정 실전문제] Part 2-1. 62번 함수 실행결과 찾기 (0) | 2025.05.29 |
[SQLD 자격검정 실전문제] Part 2-1. 61번 SQL 설명으로 맞는 것 고르기 (0) | 2025.05.29 |