정답 : 1번
NULL이 포함된 그룹별 집계에서 NULL도 하나의 그룹으로 처리됨
MIN, MAX 함수는 NULL이 아닌 행 중에서 최소, 최대값을 추출함
NULL을 포함한 사칙연산은 결과가 NULL임
CREATE TABLE TABLE_A (
TABKEY NUMBER,
COLA NUMBER,
COLB VARCAHR2(4),
COLC NUMBER
);
INSERT INTO TABLE_A VALUES (1, NULL, '가', NULL);
INSERT INTO TABLE_A VALUES (2, 1, '가', 5);
INSERT INTO TABLE_A VALUES (3, NULL, '나', 2);
INSERT INTO TABLE_A VALUES (4, 3, '나', 0);
INSERT INTO TABLE_A VALUES (5, NULL, NULL, 3);
INSERT INTO TABLE_A VALUES (6, 5, '다', 0);
INSERT INTO TABLE_A VALUES (7, NULL, '다', NULL);
SELECT COLB,
MAX(COLA) AS COLA1,
MAX(COLA) AS COLA2,
SUM(COLA + COLC) AS SUMAC
FROM TABLE_A
GROUP BY COLB;
[요약 설명]
이 문제는 SQL 집계 함수인 MAX, MIN, SUM의 동작을 이해하고 있는지를 평가함
특히 NULL값이 집계함수에 미치는 영향을 파악하는 것이 중요함
[이론적 내용]
1. MAX 함수
- 그룹 내에서 가장 큰 값 반환
- NULL 값은 무시됨
2. MIN 함수
- 그룹 내에서 가장 작은 값 반환
- NULL 값은 무시됨
3. SUM 함수
- 그룹 내 숫자들의 합계를 반환함
- NULL 값은 계산에 영향을 주지 않음
- NULL 값과의 산술연산 결과는 NULL이므로, COLA+COLC에서 둘 중 하나라도 NULL이면 해당 값은 NULL로 처리됨
'Data Engineering' 카테고리의 다른 글
[SQLD 자격검정 실전문제] Part 2-1. 79번 오류가 발생하는 SQL 찾기 (0) | 2025.06.11 |
---|---|
[SQLD 자격검정 실전문제] Part 2-1. 78번 적절한 SQL 실행결과 찾기 (0) | 2025.06.11 |
[SQLD 자격검정 실전문제] Part 2-1. 76번 트랜잭션(SAVEPOINT) (0) | 2025.06.09 |
[SQLD 자격검정 실전문제] Part 2-1. 75번 SQL 선택하기 (광고명, 광고시작일자) (0) | 2025.06.06 |
[SQLD 자격검정 실전문제] Part 2-1. 74번 SQL의 실행결과 찾기 (0) | 2025.06.05 |