IT/SQL
PostgreSQL 특정 문자 기준으로 문자열 자르기 - 레드시프트
marketinkerbell
2023. 11. 20. 14:19
반응형
PostgreSQL 특정 문자 기준으로 문자열 자르기 - 레드시프트
Split_part 함수를 사용하여 특정 문자를 기준으로 문자열을 분리할 수 있다.
함수 사용법 ↓
SPLIT_PART(string, delimiter, position)
SPLIT_PART(문자열, 구분자, 분리한 문자열들의 몇 번 째 문자를 보여줄지)
아래와 같은 멤버 테이블 (메일주소가 회원 아이디) 에서 @를 기준으로 문자를 분리해서
@ 뒤에 나오는 도메인들 기준으로 몇개씩 메일이 있는지 카운트 해보려고 한다.
예를 들어 abc@gmail.com 를 @ 기준으로 분리하면
abc 와 gmail.com 이렇게 2개로 나뉜다
우리가 필요한건 gmail.com 이기 때문에 분리한 문자열 중 2번째 문자를 보여주도록 함수를 작성한다.
소스코드 예시 ↓
SELECT split_part(mb_id,'@',2) as domain
,count(*)
FROM "dev"."s2_g5_member"
group by split_part(mb_id,'@',2)
order by count desc
결과 테이블 ↓