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

1[SQLD] SQL 개발자 기출유형 모의고사 5회
Oracle 기준으로 다음 SQL의 실행 결과로 옳은 것은?

[도서]

도서번호청구기호쪽수
B1813.6-한12250
B2911-이7300
B3005.13-박104401
B4400120
SELECT 도서번호,
       SUBSTR(청구기호, 1, INSTR(청구기호, '-') - 1) AS 분류,
       SUBSTR(청구기호, -2) AS 끝,
       CEIL(쪽수 / 100) AS 묶음
  FROM 도서
 ORDER BY 도서번호;
1
도서번호분류끝묶음
B1813.6123
B2911이73
B3005.13045
B4(null)002
2
도서번호분류끝묶음
B1813.6123
B2911이73
B3005.13044
B4(null)001
3
도서번호분류끝묶음
B1813.6122
B2911이73
B3005.13044
B4(null)001
4
도서번호분류끝묶음
B1813.6123
B2911이73
B3005.13045
B4400002
해설

B4 는 하이픈이 없어 INSTR 결과가 0 이고 SUBSTR 길이가 -1 이 되므로 Oracle 은 NULL을 돌려주며, SUBSTR(청구기호, -2) 는 뒤에서 두 글자를 잘라 00 이 된다.

CEIL은 소수를 올리므로 2.5·3·4.01·1.2 가 차례로 3·3·5·2 가 된다.

  • B4 분류를 400 으로 본 표는 INSTR 가 0 일 때 문자열 전체가 나온다고 오해했다.
  • 4.01 을 4, 1.2 를 1 로 둔 표는 CEIL 을 반올림처럼 계산했다.
  • 2.5 를 2 로 둔 표는 CEIL 을 FLOOR 처럼 내림으로 계산했다.

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

이어서 풀어보기

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