TOP
class="layout-aside-left paging-number">
본문 바로가기
자격증/SQLD

SQLD 2과목 SQL 활용 - 정규 표현식

by 기록자_Recordian 2024. 1. 30.
728x90
반응형

<목차>

※ 자료출처: 데이터 산업 진흥원(K-DATA)

 

시작에 앞서..
해당 범위는 2024년에 새롭게 추가된 범위로,
아직 자료들이 많지 않아 부족하거나, 잘못된 점이 있을 수 있습니다.

 

8. 정규 표현식

정규 표현식(Regualr Expression, REGEXP)

 

문자열의 규칙을 표현하는 검색 패턴, 주로 문자열 검색과 치환에 사용

  • 특정 규칙을 가진 문자열의 집합을 표현하는 형식, 패턴 처리를 할 때 사용하는 규칙
  • 주소, 주민등록번호 등 특수문자나 패턴을 가지고 있는 데이터를 조회해야 하는 경우, REGEXP를 활용하여 특정 패턴이나 특수문자 숫자가 들어간 데이터를 유용하게 사용

출처:&nbsp;https://ggulbeee.tistory.com/24

 

[보완]

표현식 기능
다음문자를 일반문자로 취급
(특수문자도 일반문자 취급)
{m} m회 일치
{m,} 최소 m회 일치
{,m} 최대 m회 일치
(expr) 괄호 안의 표현식을 하나의 단위로 취급
₩n - n번째 서브표현식과 일치.
- n은 1~9 사이 정수
- 일치한 서브표현식을 다시 참조 가능
- 반복되는 패턴검색 / 서브 표현식의 위치를 변경하는 용도
[:upper:] 대문자 [A-Z]
[:lower:] 소문자[a-z]
[:xdigit:] 16진수 [0-9a-fA-F]
[:punct:] 구두점 기호(특수문자)
!"#$%&'()*+,\-/;:<=>?@^_'{|}
[^[:alnum:][:cntrl:]]
[:blank:] 공백문자
[:space:] 공간문자(space, enter, tab)
REGEXP_LIKE - 검색문자열 지정, 검색패턴 지정, 일치 옵션 지정
- 일치하면 TRUE, 일치하지 않으면 FALSE
REGEXP_REPLACE - 검색 문자열 지정, 검색 패턴, 변경 문자열 지정, 변경 위치, 패턴 일치 횟수 지정
- 변경한 값을 반환
REGEXP_SUBSTR - 검색 문자열, 검색 패턴, 검색 시작 위치, 패턴 일치 횟수, 서프 표현식 지정
- 일치한 패턴을 반환
REGEXP_INSTR - 검색 문자열, 검색 패턴, 검색 시작 위치, 패턴 일치 횟수, 반환 옵션 지정, 일치 옵션 지정, 서프 표현식 지정
- 검색 문자열에서 일치한 패턴의 시작 위치를 정수로 반환
REGEXP_COUNT - 검색 문자열, 검색 패턴, 시작 위치, 일치 옵션
- 검색 문자열에서 일치한 패턴의 횟수를 반환

사용법(출처: https://ggulbeee.tistory.com/24)
  • 휴대폰 번호 패턴 확인
SELECT *
FROM TEL
WHERE TELNO REGEXP '^010-([0-9]{4})- ([0-9]{4}$';
  • 한글 포함 시
SELECT *
FROM NAME
WHERE NAME REGEXP '[가-힣]';
    • 이메일 주소 패턴 확인
SELECT *
FROM EMAIL
WHERE CONTENT REGEXP '^[A-z]([-_.]?[0-9A-z])*@([-_.]?[0-9A-z])*[.]+([A-z]{2,3}$';
  • 비밀번호 패턴 확인 (길이 8 이상 12 이하, 대문자 1개 이상 포함, 특수문자 1개 이상 알파벳으로 구성)
SELECT *
FROM PW
WHERE PASSWORD REGEXP '^(?=,*[a-z])(?=,*[A-Z])(?=,*[0-9])(?=,8[@#$%!%*?&])[A-z0-9@#$%!%*?%]{8,12}$';

정규표현식 강의를 토대로 내용을 보강하였습니다.

강의 출처: 홍쌤의 데이터 랩 유튜브

 

 

[SQLD] 정규표현식 (보강)

아시다시피 정규표현식이 2024년에 새로 추가된 범위라 자료찾기가 많이 어려웠다. [기존 자료] SQLD 2과목 SQL 활용 - 정규 표현식 서브쿼리 집합연산자 그룹 함수 윈도우 함수 TOP N 쿼리 계층형 질

puppy-foot-it.tistory.com


이전글

PIVOT 절과 UNPIVOT 절

 

다음글

SQLD 2과목 관리구문 - DML

 

 

 

728x90
반응형