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

1[SQLD] SQL 개발자 기출유형 모의고사 2회
Oracle 에서 다음 SQL 을 실행한 결과로 옳은 것은?

[회원]

회원ID연락처
m01010-1234-5678
m0202-987-6543
m03031-55-0909
SELECT 회원ID,
       REGEXP_SUBSTR(연락처, '[0-9]+', 1, 2) AS 중간,
       REGEXP_INSTR(연락처, '-', 1, 2) AS 위치
  FROM 회원
 ORDER BY 회원ID;
1
회원ID중간위치
m0112349
m029877
m03557
2
회원ID중간위치
m0112348
m029876
m03556
3
회원ID중간위치
m0112344
m029873
m03554
4
회원ID중간위치
m01109
m0227
m03317
해설

세 번째 인수 1은 시작 위치, 네 번째 인수 2는 두 번째 일치를 뜻하므로 숫자 묶음은 1234·987·55, 두 번째 하이픈 위치는 9·7·7이다.

REGEXP_INSTR는 문자열 첫 글자를 1로 세며, 010-1234-5678에서 두 번째 하이픈은 9번째 글자다.

  • 10·2·31이 나온 표는 2를 시작 위치로 오해해 둘째 글자부터 첫 묶음을 자른 것이다.
  • 8·6·6은 위치를 0부터 센 값이다.
  • 4·3·4는 첫 번째 하이픈의 위치다.

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

이어서 풀어보기

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