Oracle 기준으로 다음 SQL의 실행 결과로 옳은 것은? (대출일·… | [SQLD] SQL 개발자 기출유형 모의고사 5회 상세 페이지

1[SQLD] SQL 개발자 기출유형 모의고사 5회
Oracle 기준으로 다음 SQL의 실행 결과로 옳은 것은? (대출일·반납일은 시각이 0시인 DATE 이며, 반납 기한은 대출일로부터 14일이다)

[대출]

대출번호대출일반납일
L12026-03-012026-03-15
L22026-03-012026-03-20
L32026-02-202026-03-10
L42026-03-10(null)
L52026-03-052026-03-18
SELECT 대출번호, 반납일 - (대출일 + 14) AS 연체일수
  FROM 대출
 WHERE 반납일 > 대출일 + 14
 ORDER BY 대출번호;
1
대출번호연체일수
L25
L34
2
대출번호연체일수
L25
L36
3
대출번호연체일수
L25
L34
L4(null)
4
대출번호연체일수
L10
L25
L34
해설

DATE 에 14 를 더하면 14일 뒤 날짜가 되고 두 DATE 를 빼면 일수가 나오므로, 기한을 넘긴 L2 는 5일, 2월 20일 대출로 기한이 3월 6일인 L3 은 4일이다.

L1 은 기한 당일 반납이라 > 조건을 통과하지 못하고, 반납일이 NULL 인 L4 는 비교가 UNKNOWN이라 빠진다.

  • L1 을 0일로 넣은 표는 > 를 >= 처럼 해석했다.
  • L3 을 6일로 본 표는 2026년 2월을 30일로 계산했다.
  • L4 를 NULL 로 넣은 표는 NULL 비교 행이 남는다고 오해했다.

오류나 개정된 내용이 보이면 알려주세요

이어서 풀어보기

[SQLD] SQL 개발자 기출유형 모의고사 5회 50문항 이어서 보기문제·정답·해설을 한 페이지에서 이어서 볼 수 있어요SQLD SQL 개발자 실전 모의고사 암기장 전체 보기