Oracle 에서 다음 SQL 의 결과 값은?[계약]계약번호증권번호1L… | [SQLD] SQL 개발자 기출유형 모의고사 10회 상세 페이지

1[SQLD] SQL 개발자 기출유형 모의고사 10회
Oracle 에서 다음 SQL 의 결과 값은?

[계약]

계약번호증권번호
1LF-2026
2NL2027
3lf-2026
4LFNL-2026
5NL-20261
6NL-0007
7LF-202
SELECT COUNT(*)
  FROM 계약
 WHERE REGEXP_LIKE(증권번호, '^(LF|NL)-?\d{4}$');
1
4
2
3
3
1
4
2
해설

패턴은 LF 또는 NL 로 시작해 하이픈이 0~1개(-?) 온 뒤 숫자 정확히 4개로 끝나야 하므로 LF-2026, NL2027, NL-0007 세 행이 일치한다.

REGEXP_LIKE 는 기본으로 대소문자를 구분하고, ^ 와 $ 앵커가 앞뒤에 다른 문자가 붙는 것을 막는다.

  • lf-2026 은 소문자라 LF 와 일치하지 않는다.
  • LFNL-2026 은 선택 그룹이 한 번만 와야 하는데 LF 뒤에 NL 이 붙어 탈락한다.
  • NL-20261 과 LF-202 는 숫자가 4개가 아니어서 끝 조건을 만족하지 못한다.

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

이어서 풀어보기

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