実行中または過去に実行したクエリの情報を確認する目的でquery_profilesテーブルを検索することがあります。
しかし、query_profilesテーブルには過去に実行したクエリが大量に保存されているため、目的のクエリ情報を検索するのは少し大変です。
※session_id、transaction_id、statement_id列を条件で指定することで、目的のクエリ情報を検索することは可能ですが、それらのIDを控えていないとそのIDを探すのもまた大変です。

このような場合、クエリ実行時に、SQLヒントでラベルを付与しておくことで、目的のクエリ情報を検索しやすくなります。

クエリにラベルを付与する方法

クエリにラベルを付与する場合はクエリ実行時に、labelというSQLヒントを指定します。


使用例

以下は、ssbmスキーマのdate1テーブルを検索するクエリに「私のクエリ」というラベルを付与した場合の例です。

クエリにラベルを付与しても、実行結果に影響はありません。

上記クエリの情報をquery_profilesテーブルで検索する場合は、検索条件としてidentifier列を使用します。


クエリの実行時間を確認する例)

このように、identifier列を条件列として指定するのみで、目的のクエリを検索できます。

その他のヒント句については以下の記事をご参考ください。
SQLヒントを利用する(7.2新機能)
http://vertica-tech.ashisuto.co.jp/sql_hint_7-2/

検証バージョンについて

この記事の内容はVertica 9.1で確認しています。