설문조사
PostgreSQL/PPAS 관련 듣고 싶은 교육은


총 게시물 94건, 최근 0 건
   

한글 lengthb 트릭

글쓴이 : PostgresDBA 날짜 : 2017-09-12 (화) 11:08 조회 : 7925

PostgreSQL 은 보통 UTF8 로 캐릭터셋 세팅해서 씁니다.

그래서 한글은 3 BYTE로 저장됩니다.

select lengthb('한ab글');
=> 8

그런데 오라클을  EPAS 로 마이그하는 과정에서 오라클 처럼 한글 길이를 2BYTE로 계산되게끔 해달라는 묘한 요청이 있었습니다.

그래서 아래처럼 정규식을 활용하여 구현해줬습니다.

select lengthb(regexp_replace('한ab글', e'[ㄱ-힣]','ab','g'));
=> 6


   

postgresdba.com