[SQL] SUBSTR, SUBSTRING, SUBSTRING_INDEX 함수

하파타카·2022년 5월 26일
0

SQL

목록 보기
6/26

SUBSTR, SUBSTRING: 문자열을 특정위치부터 원하는 만큼 가져오는 함수
SUBSTRING_INDEX: 구분자를 이용해 문자열을 잘라오는 함수


SUBSTR, SUBSTRING

문자열을 특정위치부터 원하는 만큼 가져오는 함수로, 시작위치와 가져올 문자수를 지정해줘야 한다.
단, 여기서 시작위치는 0부터 시작하는 index와는 달리 1부터 시작함에 유의.

사용
SELECT SUBSTR('문자열', 시작위치, 가져올문자수);

SELECT SUBSTR("가나다라마바사아자", 1, 2);
// 결과: 가나

SELECT SUBSTR("가나다라마바사아자", 5, 3);
// 결과: 마바사

SUBSTRING_INDEX

구분자를 이용해 문자열을 잘라오는 함수.
구분자를 기준으로 문자열을 잘라오는 기능으로, 구분자를 제거하여 가져오는 함수는 아니니 주의.

사용
SELECT SUBSTRING_INDEX('문자열', '구분자', 구분자index)

SELECT SUBSTRING_INDEX('강감찬-허준-비-이순신-박찬호-강호동-신사임당-이황-이성계', '-', 3);
// 결과: 강감찬-허준-비

SELECT SUBSTRING_INDEX('강감찬-허준-비-이순신-박찬호-강호동-신사임당-이황-이성계', '-', -4);
// 결과: 강호동-신사임당-이황-이성계

SUBSTRING_INDEX 함수를 java의 split처럼 사용하기

사용
SELECT SUBSTRING_INDEX(SUBSTRING_INDEX('문자열', '구분자', 구분자index), '구분자', -1)

여기서 -1은 고정값임.

SELECT SUBSTRING_INDEX(SUBSTRING_INDEX('강감찬-허준-비-이순신-신사임당-이황-이성계', '-', 3), '-', -1);
// 결과: 비

참고 링크

[SQL][함수] Substring : 문자열 일부 추출

MySQL 문자열 자르기

profile
천 리 길도 가나다라부터

0개의 댓글