MariaDB SQL
MariaDB SUBSTRING_INDEX(특정 문자로 구분하여 문자열 나누기)
Hwarang.pop
2024. 1. 23. 20:39
728x90
320x100
SUBSTRING_INDEX(문자열, 구분자, 구분자index)
해당 문자열 에서 구분자를 기준으로 구분자index 만큼 문자열을 가져옵니다.
SELECT SUBSTRING_INDEX('02-3333-3333', '-', 1) ;
▶ 결과 : '02'
SELECT SUBSTRING_INDEX('02-3333-3333', '-', 2) ;
▶ 결과 : '02-3333'
SELECT SUBSTRING_INDEX('02-3333-3333', '-', 3) ;
▶ 결과 : '02-3333-3333'
구분자index 가 음수일 경우에는 뒷부분부터 가져옵니다.
SELECT SUBSTRING_INDEX('02-3333-3333', '-', -1) ;
▶ 결과 : '3333'
SELECT SUBSTRING_INDEX('02-3333-3333', '-', -2) ;
▶ 결과 : '3333-3333'
SELECT SUBSTRING_INDEX('02-3333-3333', '-', -3) ;
▶ 결과 : '02-3333-3333'
전화번호의 가운데 번호를 변조할 때도 사용가능한데요.
가령 앞의 번호 자리수가 다를때는 자르기가 애매하기에 구분자를 통해 문자열을 나눕니다.
SELECT
CONCAT(SUBSTRING_INDEX(T.TP,'-',1) ,'-****-',SUBSTRING_INDEX(T.TP,'-',-1)) AS TELEPHONE
FROM (
SELECT '02-3333-3333' AS TP
UNION
SELECT '031-2222-2222' AS TP
) T;
▶ 결과 :
02-****-3333
031-****-2222
728x90
반응형