trim
목적
맨 앞, 뒤 공백 또는 연속된 특정 문자 제거
기본(공백제거)
함수 | 기능 | 결과 |
---|---|---|
trim(' abc ') | 양쪽 공백 제거 | 'abc' |
ltrim(' abc ') | 왼쪽 공백 제거 | 'abc ' |
rtrim(' abc ') | 오른쪽 공백 제거 | ' abc' |
고급 (연속된 특정 문자 제거)
- trim 옵션:
trailing
/leading
/both
함수 | 기능 | 결과 |
---|---|---|
trim('trailing '-' from '----abc----') | 패턴을 만족하는문자열의 뒷 부분을 제거 | '----abc' |
trim('leading '-' from '----abc----') | 패턴을 만족하는문자열의 앞 부분을 제거 | 'abc----' |
trim('both '-' from '----abc----') | 패턴을 만족하는문자열의 양쪽 부분을 제거 | 'abc' |
주의
패턴을 만족해도 문자열 중간의 값은 변하지 않음 즉, 양극단에 위치한 패턴만 제거됨
함수 | 결과 |
---|---|
trim(both '-' from '----a--b-cde----') | 'a--b-cde' |
활용
- 지번 주소에서
번지
앞 또는 뒷 부분만 가져올 떄 활용- 번지로 끝나는 경우에는
trim()
- 번지 뒤에 주소가 있는 경우에는
regexp_split_to_array()
- 번지로 끝나는 경우에는
함수 | 기능 | 결과 |
---|---|---|
trim('trailing '번지' from '서울특별시 관악구 신림동 611-171번지') | 번지 앞 부분 가져오기 | '서울특별시 관악구 신림동 611-171' |
(regexp_split_to_array('서울특별시 동작구 신대방동 607-28번지 206호', '번지'))[1] | 번지 앞 부분 가져오기 | 서울특별시 동작구 신대방동 607-28 |
sql_정규표현식 |
trim_scale
소수점 이하 0 제거
목적
- 원래 정수값이었으나, 실수형 데이터 타입으로 인해 생긴 소수점 이하 0들을 제거하기 위함
함수 | 기능 | 결과 |
---|---|---|
select trim_scale(234.0000) | 정수실수형 자료 중 | 234 |