lookup

매핑 테이블을 조회하여 입력 레코드의 키 필드 값에 대응하는 매핑 값을 출력 필드에 할당합니다.

명령어 속성

항목설명
명령어 유형가공 쿼리
필요 권한매핑 테이블에 대한 조회 권한
라이선스 사용량해당 없음
병렬 실행지원
분산 실행수집 노드에서 실행 (mapper)

문법

lookup TABLE SRC_FIELD [as LOOKUP_KEY] output FIELD [as ALIAS], ...

대상

TABLE
조회할 매핑 테이블의 이름
SRC_FIELD [as LOOKUP_KEY]
입력 레코드에서 조회 키로 사용할 필드. as를 사용하여 매핑 테이블의 키 필드 이름이 다른 경우 별칭을 지정할 수 있습니다. as를 생략하면 입력 필드 이름을 그대로 매핑 테이블의 키 필드 이름으로 사용합니다.
output FIELD [as ALIAS], ...
매핑 테이블에서 가져올 출력 필드 목록. 쉼표(,)로 구분하여 여러 필드를 지정할 수 있습니다. as를 사용하여 입력 레코드에 할당할 필드 이름을 변경할 수 있습니다. as를 생략하면 매핑 테이블의 필드 이름을 그대로 사용합니다.

입력 필드

필드타입필수 여부설명
SRC_FIELD모든 타입필수매핑 테이블 조회에 사용할 키 필드. as 키워드로 별칭을 지정할 수 있습니다.

출력 필드

필드타입설명
(출력 필드명)모든 타입output 절에 지정한 필드. 매핑 테이블에서 조회한 값이 할당됩니다. as 키워드로 입력 레코드에 할당할 필드 이름을 변경할 수 있습니다. 매핑 테이블에 키가 없으면 null이 할당됩니다.

오류 코드

파싱 오류
오류 코드메시지설명
20700lookup 명령에서 output 구문이 누락되었습니다.output 키워드가 지정되지 않은 경우
20701lookup 명령에서 [table]은 유효하지 않는 매핑 테이블입니다.존재하지 않는 매핑 테이블 이름을 지정한 경우
20702lookup 필드 문법이 유효하지 않습니다. 필드 as 별칭 문법을 사용하십시오.필드 별칭 문법이 올바르지 않은 경우
20703lookup 명령의 [as] 자리에 as가 와야 합니다.as 키워드 위치에 다른 토큰이 지정된 경우
20704[name]에 대한 lookup 권한이 없습니다.매핑 테이블에 대한 조회 권한이 없는 경우
런타임 오류

해당 사항 없음

설명

lookup 명령어는 입력 레코드의 키 필드 값을 사용하여 매핑 테이블을 조회하고, 매핑된 값을 출력 필드에 할당합니다. 매핑 테이블에 키가 존재하지 않으면 출력 필드에 null을 할당합니다. 매핑 테이블 핸들러가 등록되지 않은 상태에서는 조회 없이 입력 레코드를 그대로 출력합니다.

입력 필드 이름과 매핑 테이블의 키 필드 이름이 다른 경우 as를 사용하여 매핑 테이블의 키 필드를 지정할 수 있습니다. 마찬가지로 출력 필드 이름도 as를 사용하여 변경할 수 있습니다.

사용 예

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

  1. 출발지 IP로 자산 정보 조회

    table limit=10 WEB_APACHE_SAMPLE
    | lookup ip_asset src_ip output hostname, department
    

    ip_asset 매핑 테이블에서 src_ip 필드 값을 키로 hostnamedepartment 필드를 조회하여 입력 레코드에 추가합니다.

  2. 키 필드에 별칭 사용

    table limit=10 WEB_APACHE_SAMPLE
    | lookup ip_asset src_ip as ip output hostname
    

    입력 레코드의 src_ip 필드 값을 매핑 테이블의 ip 키 필드로 사용하여 조회합니다.

  3. 출력 필드에 별칭 사용

    table limit=10 WEB_APACHE_SAMPLE
    | lookup ip_asset src_ip output hostname as src_host, department as src_dept
    

    매핑 테이블의 hostname 필드를 src_host로, department 필드를 src_dept로 변환하여 입력 레코드에 할당합니다.

호환성

lookup 명령어는 소나 4.0 이전 버전부터 제공되었습니다.