티스토리 뷰

마리아 db를 사용하다가 코드값인데 영문과 숫자가 섞여있고 숫자만 써야할 일이 생긴다.

예를들어 코드값이 AA123, BB1233,CDE2345 이렇게 영문,숫자가 섞여있을때 숫자가 1000 이하인것들만 추출할 경우이다.

select * from dept where regexp_replace(dept_id,'[a-z]','')<1000 and regexp_replace(dept_id,'[a-z]','')!=''

이런식으로 regexp_replace 함수를 쓰면 된다. 부서코드에 영문 [a-z] 이 있으면 '' 공백으로 바꾼다.

바꾸고 나서 값이 없는 경우도 있으니 공백만 있는경우 '' 는 뺀다.

참고로..

 

정규식을 통해 한글, 영문, 특문, 숫자를 제거 하는 방법입니다.

 

1. 한글제거

- SELECT REGEXP_REPLACE('ab12cd한글(테스트)','[가-힣]','') AS remove_digits;

 

2. 숫자제거 

- SELECT REGEXP_REPLACE('ab12cd한글(테스트)','[0-9]','') AS remove_digits;

 

3. 영문제거

- SELECT REGEXP_REPLACE('ab12cd한글(테스트)','[a-z]','') AS remove_digits;

 

4. 한글과 특수문자 ( ) 제거

- SELECT REGEXP_REPLACE('ab12cd한글(테스트)','[가-힣()]','') AS remove_digits;

 

댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2025/02   »
1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28
글 보관함