substr()
substr() 함수는 문자열에서 지정한 인덱스 범위에 해당하는 부분 문자열을 반환합니다.
문법
substr(STR, BEGIN[, END])
매개변수
STR- 원본 문자열 필드 또는 값입니다. 문자열이 아닌 값은 문자열로 변환하여 처리합니다.
BEGIN- 추출을 시작할 문자 인덱스입니다. 인덱스는 0부터 시작합니다. 음수이면 문자열 끝에서부터 역방향으로 계산합니다. 시작 인덱스가 문자열 길이 이상이거나 변환 후 0 미만이면
null을 반환합니다. END- (선택) 추출을 끝낼 문자 인덱스(미포함)입니다. 인덱스는 0부터 시작합니다. 생략하면 문자열 끝까지 추출합니다. 음수이면 문자열 끝에서부터 역방향으로 계산합니다.
END가 문자열 길이보다 크면 문자열 끝까지 추출합니다.BEGIN이END보다 크거나 변환 후 0 미만이면null을 반환합니다.
설명
substr() 함수는 STR 문자열의 BEGIN 인덱스(포함)부터 END 인덱스(미포함)까지의 부분 문자열을 반환합니다.
STR이null이면null을 반환합니다.BEGIN이null이면STR전체를 반환합니다.END와BEGIN이 같으면 빈 문자열("")을 반환합니다.
오류 코드
해당 사항 없음
사용 예
이 사용 예에서 조회하는 WEB_APACHE_SAMPLE 테이블을 준비하려면 쿼리 실습용 데이터를 참고하세요.
-
URI의 앞부분 10자 추출
table limit=5 WEB_APACHE_SAMPLE | eval result = substr(uri, 0, 10) | fields uri, result -
시작 인덱스만 지정하여 URI의 첫 번째
/이후 부분 추출table limit=5 WEB_APACHE_SAMPLE | eval result = substr(uri, 1) | fields uri, result | # result: "feed", "archives/2370" 등 -
음수 인덱스로 URI 끝부분 추출
table limit=5 WEB_APACHE_SAMPLE | eval result = substr(uri, -5) | fields uri, result -
NULL 입력
json "{'val': null}" | eval result = substr(val, 0, 3) | # result: null
호환성
substr() 함수는 소나 4.0 이전 버전부터 제공되었습니다.