Database/SQL

SQL 정규 표현식(Regular Expression) - 날짜 형식

Iam_im2 2021. 11. 2. 19:22
728x90

1. 문자 관련 패턴

패턴 기능 예시 설명
[ ] [ ]안에 있는 데이터 값을 찾는다. [0-3]82 “082”,“182”,“382” 값을 찾는다.
( ) ( )안에 있는 문자열 묶음을 찾는다. (만세) 한 단어인 만세를 찾는다.

 

 

 

 

2. 예제

 

SELECT 컬럼명 FROM 테이블명 WHERE REGEXP_LIKE(컬럼명,‘^(19|20)\d{2}$’);

 

해당 컬럼에서 ‘19XX’또는 ‘20XX’이 들어간 문자열을 출력한다.

(19|20) : 19 또는 20

\d : 숫자

{2} : 2번 반복

 

 

 

SELECT 컬럼명 FROM 테이블명 WHERE REGEXP_LIKE(컬럼명,‘^(19|20)\d{2}-(0[1-9]|1[012]-(0[1-9]|[1[0-9]|2[0-9]|3[0-1])$’);

해당 컬럼에서 ‘YYYY-MM-DD’형식의 날짜를 출력한다.

 

 

 

 

SELECT 컬럼명 FROM 테이블명 WHERE REGEXP_LIKE(컬럼명, '^(19|20)\d{2}-(0[1-9]|1[012])-(0[1-9]|[12][0-9]|3[0-1])$');

위의 식을 더 간단하게 정리하면 이렇게 된다. 1[0-9]|2[0-9][12][0-9]라는 하나의 조건으로 합쳐줬다.

 

 

 

 

3. 참고사이트

위키백과 정규식

 

 

728x90