stats

그룹을 대상으로 동작하는 집계 함수의 평가 결과를 출력합니다.

문법

stats [parallel=BOOL] AGGR_FUNC [as ALIAS], ... [by GRP_FIELD, ...]
필수 매개변수
AGGR_FUNC [as ALIAS], ...
실행할 집계 함수(AGGR_FUNC)를 이용해 표현식을 입력합니다. as 절을 이용해 집계 함수값을 담을 필드에 이름(ALIAS)을 지정할 수 있습니다. 이름을 지정하지 않으면 count(), sum(sent_pkts) 등 함수 이름을 필드 이름으로 사용하므로 필드 이름(ALIAS)을 지정하는 것이 좋습니다.
선택 매개변수
parallel=BOOL
쿼리 결과의 병렬 출력 여부(기본값: f). 처리 속도는 증가하지만 데이터의 순서를 보장하지 않습니다. 데이터의 순서가 중요한 쿼리문에서는 이 옵션을 사용하지 마십시오.
  • t: 쿼리 결과를 병렬로 출력
  • f: 쿼리 결과를 병렬로 출력하지 않음
by GRP_FIELD, ...
by 절을 이용해 집계 함수 결과를 그룹화할 필드를 지정합니다. 그룹화 필드를 지정하지 않으면 이전 쿼리 명령어에서 넘어오는 전체 로그를 하나의 그룹으로 계산합니다. 그룹 필드를 기준으로 정렬되는 부수적인 효과가 있습니다.

사용 예

  1. 전체 레코드 개수

    stats count
    
  2. src_ip 필드 값별로 레코드 개수 계산하기

    stats count by src_ip
    
  3. src_ip, dst_ip 필드 쌍으로 그룹화하여 레코드 개수 계산하기

    stats count by src_ip, dst_ip
    
  4. src_ip, dst_ip 필드 쌍으로 그룹화하여 sum(bytes)와 레코드 개수(count) 계산하기

    stats sum(bytes) as bytes, count by src_ip, dst_ip