학습용 기출·복원자료 분류 확인SQLD · 2023년 51회 SQL 기본 및 활용 · 41번
현재 연도가 2023년일 때 `TO_DATE('2023','YYYY')`의 월·일 기본값은?
1
2023-01-01로 항상 고정
오답 이유연도만 주어졌다고 월이 무조건 1월이 되는 규칙이 아니다. 따라서 1번 보기 ‘2023-01-01로 항상 고정’의 적용 여부를 문제 조건과 대조해야 한다.
2
2023-12-31
오답 이유‘2023-12-31’은 이 문항에서 요구하는 ‘2023-05-01처럼 실행 시점의 현재 월과 1일’의 정의·역할과 구분된다. Oracle에서 날짜 요소가 생략되면 연도는 현재 연도, 월은 현재 월, 일은 1로 보완되는 규칙이 적용된다. 실행 당시 현재 월이 5월이면 2023-05-01이 된다. 따라서 2번 보기 ‘2023-12-31’의 적용 여부를 문제 조건과 대조해야 한다.
3
형식 오류
오답 이유문자와 YYYY 형식이 일치하므로 변환 자체는 가능하다. 따라서 3번 보기 ‘형식 오류’의 적용 여부를 문제 조건과 대조해야 한다.
4
2023-05-01처럼 실행 시점의 현재 월과 1일
정답 근거Oracle에서 날짜 요소가 생략되면 연도는 현재 연도, 월은 현재 월, 일은 1로 보완되는 규칙이 적용된다. 실행 당시 현재 월이 5월이면 2023-05-01이 된다. 따라서 4번 보기 ‘2023-05-01처럼 실행 시점의 현재 월과 1일’의 적용 여부를 문제 조건과 대조해야 한다.
ANSWER & EXPLANATION
정답 4번
핵심 판단은 4번 ‘2023-05-01처럼 실행 시점의 현재 월과 1일’입니다. Oracle에서 날짜 요소가 생략되면 연도는 현재 연도, 월은 현재 월, 일은 1로 보완되는 규칙이 적용된다. 실행 당시 현재 월이 5월이면 2023-05-01이 된다.