カテゴリ:

コンテキスト関数 (セッション)

LAST_QUERY_ID

現在のセッションで指定されたクエリの ID を返します。クエリが指定されていない場合、最新のクエリが返されます。

Tip

以前のコマンドの結果を処理するために RESULT_SCAN 関数でこの関数を使用する代わりに、パイプ演算子->>) を使用できます。そうすることで、コマンドを実行し、その結果セットを1つのステップで処理することができます。

構文

LAST_QUERY_ID( [ <num> ] )
Copy

引数

num

(セッション内の)クエリの位置に基づいて、返すクエリを指定します。

デフォルト: -1

使用上の注意

  • 正の数は、セッションで最初に実行されたクエリから始まります。例:

    • LAST_QUERY_ID(1) は最初のクエリを返します。

    • LAST_QUERY_ID(2) は2番目のクエリを返します。

    • LAST_QUERY_ID(6) は6番目のクエリを返します。

  • 負の数は、セッションで最後に実行されたクエリで始まります。例:

    • LAST_QUERY_ID(-1) は最新のクエリを返します(LAST_QUERY_ID() と同等)。

    • LAST_QUERY_ID(-2) は2番目に新しいクエリを返します。

  • 最後の LAST_QUERY_ID 関数は、現在のセッション内で実行されたすべてのステートメントを対象とし、子ステートメント(例: ストアドプロシージャ、匿名ブロック、または パイプ演算子 ステートメントの一部として実行されたステートメント) も含みます。一連のステートメント内の位置のみに基づくステートメントのクエリ ID を取得したい場合、パイプ演算子の使用を検討してください。より複雑なユースケースの場合は、Snowflake スクリプトのブロックの グローバル変数 SQLID の使用をお勧めします。

最新のクエリの ID を返します。

SELECT LAST_QUERY_ID();
Copy

セッションで実行された最初のクエリの ID を返します。

SELECT LAST_QUERY_ID(1);
Copy