카테고리:

컨텍스트 함수 (세션)

LAST_QUERY_ID

현재 세션에서 지정된 쿼리의 ID를 반환합니다. 쿼리를 지정하지 않으면 가장 최근 쿼리가 반환됩니다.

RESULT_SCAN 함수와 함께 이 함수를 사용하여 이전 명령의 결과를 처리하는 대신, 파이프 연산자 (->>)를 사용할 수 있습니다. 이렇게 하면 명령을 실행하고 결과 세트를 단일 단계로 처리할 수 있습니다.

구문

LAST_QUERY_ID( [ <num> ] )
Copy

인자

num

쿼리 위치(세션 내)를 기반으로, 반환할 쿼리를 지정합니다.

기본값: -1

사용법 노트

  • 양수는 세션에서 실행된 첫 번째 쿼리로 시작합니다. 예를 들면 다음과 같습니다.

    • LAST_QUERY_ID(1) 은 첫 번째 쿼리를 반환합니다.

    • LAST_QUERY_ID(2) 는 두 번째 쿼리를 반환합니다.

    • LAST_QUERY_ID(6) 은 여섯 번째 쿼리를 반환합니다.

  • 음수는 세션의 가장 최근 쿼리로 시작합니다. 예를 들면 다음과 같습니다.

    • LAST_QUERY_ID(-1) 는 가장 최근 쿼리를 반환합니다(LAST_QUERY_ID() 와 동일).

    • LAST_QUERY_ID(-2) 는 두 번째로 최근에 실행된 쿼리를 반환합니다.

  • 마지막 LAST_QUERY_ID 함수는 하위 문(예: 저장 프로시저, 익명 블록 또는 파이프 연산자 문의 일부로 실행된 문)을 포함하여 현재 세션 내에서 실행된 모든 문을 고려합니다. 일련의 문에서의 위치만을 기준으로 하는 문의 쿼리 ID를 가져오려면 파이프 연산자를 사용해 보세요. 더 복잡한 사용 사례의 경우 Snowflake Scripting 블록의 전역 변수SQLID 를 사용하는 것이 좋습니다.

다음과 같이 가장 최근 쿼리의 ID를 반환합니다.

SELECT LAST_QUERY_ID();
Copy

세션에서 실행된 첫 번째 쿼리의 ID를 반환합니다.

SELECT LAST_QUERY_ID(1);
Copy