rpad()

rpad() 함수는 문자열의 오른쪽에 패딩 문자를 반복하여 붙여 지정한 길이의 문자열을 반환합니다.

문법

rpad(STR, LENGTH[, PAD])

매개변수

STR
원본 문자열 필드 또는 값입니다. 문자열이 아닌 값은 문자열로 변환하여 처리합니다.
LENGTH
결과 문자열의 목표 길이입니다. 1 이상 10240 이하의 정수여야 합니다. 상수로 지정하는 경우 범위를 벗어나면 파싱 오류가 발생합니다. 런타임에 이 범위를 벗어나면 null을 반환합니다.
PAD
(선택) 오른쪽에 채울 패딩 문자열입니다. 생략하면 공백()을 사용합니다. 빈 문자열("")을 지정하면 공백으로 처리합니다.

설명

rpad() 함수는 STR 문자열의 오른쪽에 PAD 문자열을 반복하여 붙여 전체 길이가 LENGTH가 되도록 만든 문자열을 반환합니다.

  • STRnull이면 null을 반환합니다.
  • STR의 길이가 LENGTH보다 크면 STRLENGTH만큼 잘라서 반환합니다.
  • LENGTHnull이거나 정수가 아니면 null을 반환합니다.
  • PADnull이면 null을 반환합니다.
  • PAD가 여러 문자인 경우 LENGTH에 맞도록 반복 후 정확히 LENGTH 길이로 잘라서 반환합니다.

오류 코드

오류 코드설명
90890LENGTH에 1 미만이거나 10240 초과하는 상수를 지정한 경우

사용 예

이 사용 예에서 조회하는 WEB_APACHE_SAMPLE 테이블을 준비하려면 쿼리 실습용 데이터를 참고하세요.

  1. HTTP 메서드를 공백으로 오른쪽 패딩하여 10자리로 맞추기

    table limit=5 WEB_APACHE_SAMPLE | eval result = rpad(method, 10) | fields method, result
    | # result: "GET       ", "POST      " 등
    
  2. 특정 문자로 패딩

    table limit=5 WEB_APACHE_SAMPLE | eval result = rpad(method, 8, "-") | fields method, result
    | # result: "GET-----", "POST----" 등
    
  3. 여러 문자 패딩 문자열 사용

    json "{'val': 'hello'}" | eval result = rpad(val, 10, "pad")
    | # result: "hellopadpa"
    
  4. 원본 문자열이 목표 길이보다 긴 경우

    json "{'val': 'hello'}" | eval result = rpad(val, 3, "x")
    | # result: "hel"
    
  5. NULL 입력

    json "{'val': null}" | eval result = rpad(val, 8, "*")
    | # result: null
    

호환성

rpad() 함수는 소나 4.0 이전 버전부터 제공되었습니다.