repeat
입력 데이터를 지정된 횟수만큼 복사하여 출력합니다.
명령어 속성
| 항목 | 설명 |
|---|---|
| 명령어 유형 | 가공 쿼리 |
| 필요 권한 | 없음 |
| 라이선스 사용량 | 해당 없음 |
| 병렬 실행 | 지원 |
| 분산 실행 | 미지원 |
문법
repeat count=INT [_repidx={t|f}]
옵션
count=INT- 각 입력 레코드를 반복 출력할 횟수
_repidx={t|f}- 반복 인덱스 필드 출력 여부 (기본값:
f)
t: 각 복사본에_repidx필드를 추가하고 0부터 시작하는 인덱스 값을 설정합니다.f: 반복 인덱스 필드를 추가하지 않습니다.
출력 필드
| 필드 | 타입 | 설명 |
|---|---|---|
| _repidx | 정수 | 반복 인덱스 (0부터 시작). _repidx=t 옵션을 지정한 경우에만 출력됩니다. |
오류 코드
파싱 오류
| 오류 코드 | 메시지 | 설명 |
|---|---|---|
| missing-count-option | - | count 옵션을 지정하지 않은 경우 |
런타임 오류
해당 사항 없음
설명
repeat 명령어는 각 입력 레코드를 count에 지정한 횟수만큼 복사하여 출력합니다. 예를 들어 count=3을 지정하면 입력 레코드 1건당 3건의 동일한 레코드가 출력됩니다.
_repidx=t 옵션을 사용하면 각 복사본에 0부터 시작하는 반복 인덱스 필드(_repidx)가 추가되어, 몇 번째 복사본인지 구분할 수 있습니다.
사용 예
이 사용 예에서 조회하는 WEB_APACHE_SAMPLE 테이블을 준비하려면 쿼리 실습용 데이터를 참고하세요.
-
레코드를 3회 반복 출력
table limit=2 WEB_APACHE_SAMPLE | repeat count=3조회한 각 레코드가 3번씩 복사되어 총 6건의 레코드가 출력됩니다.
-
반복 인덱스와 함께 출력
table limit=2 WEB_APACHE_SAMPLE | repeat count=3 _repidx=t | fields _repidx, src_ip, uri각 복사본에
_repidx값(0, 1, 2)이 추가되어 몇 번째 복사본인지 구분할 수 있습니다. -
반복 인덱스를 활용한 연속 날짜 생성
json "[{'base_date': '2025-01-01'}]" | repeat count=7 _repidx=t | eval date = dateadd(date(base_date, "yyyy-MM-dd"), "day", _repidx) | fields date기준 날짜로부터 7일간의 연속 날짜를 생성합니다.
호환성
repeat 명령어는 소나 4.0 이전 버전부터 제공되었습니다.