다음 [강좌] 테이블에 대해 SQL을 실행한 결과로 옳은 것은? (Or… | [SQLD] SQL 개발자 기출유형 모의고사 7회 상세 페이지
1[SQLD] SQL 개발자 기출유형 모의고사 7회
다음 [강좌] 테이블에 대해 SQL을 실행한 결과로 옳은 것은? (Oracle 기준)[강좌]
| 강좌명 | 개강일 | 종강일 |
|---|---|---|
| 회화A | 2026-01-15 | 2026-02-14 |
| 문법B | 2026-02-02 | 2026-03-01 |
| 작문C | 2026-03-10 | 2026-04-09 |
| 독해D | 2026-04-01 | 2026-04-30 |
SELECT 강좌명,
종강일 - 개강일 AS 기간,
TO_CHAR(LAST_DAY(개강일), 'DD') AS 말일
FROM 강좌
WHERE 개강일 >= TO_DATE('2026-02-01', 'YYYY-MM-DD')
ORDER BY 개강일;1
| 강좌명 | 기간 | 말일 |
|---|---|---|
| 문법B | 28 | 28 |
| 작문C | 31 | 31 |
| 독해D | 30 | 30 |
2
| 강좌명 | 기간 | 말일 |
|---|---|---|
| 문법B | 27 | 28 |
| 작문C | 30 | 31 |
| 독해D | 29 | 30 |
3
| 강좌명 | 기간 | 말일 |
|---|---|---|
| 회화A | 30 | 31 |
| 문법B | 27 | 28 |
| 작문C | 30 | 31 |
| 독해D | 29 | 30 |
4
| 강좌명 | 기간 | 말일 |
|---|---|---|
| 문법B | 27 | 31 |
| 작문C | 30 | 30 |
| 독해D | 29 | 30 |
해설
Oracle 에서 날짜−날짜는 두 날짜 사이의 일수(끝−시작)이고 LAST_DAY 는 그 달의 마지막 날을 돌려주며, WHERE 조건으로 2026-02-01 이후 개강한 세 강좌만 남는다.
문법B 는 2월 2일부터 3월 1일까지라 27, 2월 말일은 28 이고 작문C 는 30·31, 독해D 는 29·30 이 된다.
- 시작일을 포함해 하루를 더하면 28·31·30 이 되지만 단순 차가 결과다.
- 회화A 는 1월 15일 개강이라 WHERE 조건에서 빠진다.
- LAST_DAY 는 종강일이 아니라 개강일 기준이라 문법B 의 말일은 28 이다.
오류나 개정된 내용이 보이면 알려주세요