SQL 개발자 자격증SQL 기본문자열 처리 함수난이도 2MCQ

SQL 개발자 자격증 문자열 처리 함수 기출문제 #20225

문제

다음 중 문자열 처리 함수의 실행 결과가 나머지 셋과 다른 하나는? (Oracle 기준)

① SELECT TRIM('xxSQLxx', 'x') FROM DUAL; ② SELECT RTRIM('SQLxx', 'x') FROM DUAL; ③ SELECT REPLACE('xxSQLxx', 'x') FROM DUAL; ④ SELECT LTRIM('xxSQL', 'x') FROM DUAL;

정답

1

해설

정답: 1. ②③④는 모두 'SQL'을 반환하지만, ①은 문법 오류(ORA-00907)로 결과가 다르다. 오라클 TRIM은 TRIM([LEADING|TRAILING|BOTH] 문자 FROM 문자열) 형태만 허용하며, TRIM('xxSQLxx', 'x')처럼 콤마로 두 인수를 넘기는 문법은 지원하지 않는다.

오답 풀이

  • ①: 정답. 콤마 구분 2인수 TRIM 문법은 오라클에서 오류(ORA-00907 missing right parenthesis)가 발생하여 값을 반환하지 못한다.
  • ②: RTRIM('SQLxx','x')는 오른쪽 끝의 'x'들을 제거해 'SQL'을 반환한다.
  • ③: REPLACE('xxSQLxx','x')처럼 세 번째 인수를 생략하면 'x'를 빈 문자열로 치환하여 'SQL'을 반환한다.
  • ④: LTRIM('xxSQL','x')는 왼쪽 앞의 'x'들을 제거해 'SQL'을 반환한다.

보충 개념 TRIM은 양쪽 한 종류의 문자만 제거하며 FROM 키워드를 쓴다. RTRIM/LTRIM은 두 번째 인수로 제거할 문자 집합을 받고, REPLACE는 세 번째 인수를 생략하면 대상 문자열을 삭제한다.

SQL 개발자 자격증 SQL 기본 다른 기출문제

SQL 개발자 자격증 시험 준비 가이드

이런 문제 20~50개를 한 번에 풀어보세요

매번 새로 추가되는 모의고사 + 오답 자동 복습 + 회차별 실력 추적. 회원가입 후 무료 이용.