-
postgreSQL - 필드에서 공백 제거하기프로그래밍/DB 2018. 3. 18. 14:52반응형
postgreSQL 의 필드에서 공백 제거하기
보통 trim()을 사용해서 제거하지만
trim 함수는 모든 공백을 다 제거하는 것이 아니라
ascii 코드가 32인 공백만 제거한다.
참고로 공백 부분의 ascii 코드 확인 쿼리는 아래와 같다.
select ascii(left(name, 1))
from tablename
where id = 723;
검사해보니 9(탭문자)가 나왔다.
필드에서 탭 등의 모든 공백을 다 제거하기 위해서는
정규식 표현을 사용해야 한다.
update tablename set name = REGEXP_REPLACE(name, '^\s+', '');
정규식 ^\s+에서 ^은 문장의 시작을, \s는 공백을, +은 1번 이상을 의미한다.
기존의 필드와 새로 업데이트한 필드를 비교해보니
이름 앞의 공백이 제대로 제거된 것을 확인되었다.
# select name, name_api from 테이블이름 where name != name_api;
name | name_api
------------------------------------------+--------------------------------------------------
(893-15) | (893-15)
(주)HTC 까사빌 | (주)HTC 까사빌
(주)HTC 까사빌 | (주)HTC 까사빌
(주)HTC 까사빌 | (주)HTC 까사빌
(주)HTC 까사빌 | (주)HTC 까사빌
(주)HTC 까사빌 | (주)HTC 까사빌
(주)HTC 까사빌 | (주)HTC 까사빌
(주)HTC 까사빌 | (주)HTC 까사빌
(주)HTC 까사빌 | (주)HTC 까사빌
(주)HTC 까사빌 | (주)HTC 까사빌
참고: http://www.postgresqltutorial.com/postgresql-trim-function/
728x90반응형'프로그래밍 > DB' 카테고리의 다른 글
postgreSQL command line에서 사용하기 (4) 2018.04.11 [postgresql] pg_dump 로 데이터베이스 & 테이블 백업하기 (0) 2018.03.19 postgresql 의 반올림 함수들 (0) 2018.03.11 postgreSQL 데이터 디렉토리 변경 (0) 2018.03.02 phppgAdmin에서 postgreSQL 데이터베이스 복사하기 & 에러 처리 (0) 2018.02.20