Labeling Statements
To quickly identify queries and other operations for profiling and debugging purposes, include the LABEL hint.
LABEL hints are valid in the following statements:
- COPY
- DELETE
- EXPORT statements:
- INSERT
- MERGE
- SELECT
- UPDATE
- UNION: Valid in the UNION's first SELECT statement. Vertica ignores labels in subsequent SELECT statements.
For example:
SELECT /*+label(myselectquery)*/ COUNT(*) FROM t; INSERT /*+label(myinsertquery)*/ INTO t VALUES(1);
After you add a label to one or more statements, query the QUERY_PROFILES system table to see which queries ran with your supplied labels. The QUERY_PROFILES system table IDENTIFIER column returns the user-defined label that you previously assigned to a statement. You can also obtain other query-specific data that can be useful for querying other system tables, such as transaction IDs.
For example:
=> SELECT identifier, query FROM query_profiles; identifier | query ---------------+----------------------------------------------------------- myselectquery | SELECT /*+label(myselectquery)*/ COUNT(*) FROM t; myinsertquery | INSERT /*+label(myinsertquery)*/ INTO t VALUES(1); myupdatequery | UPDATE /*+label(myupdatequery)*/ t SET a = 2 WHERE a = 1; mydeletequery | DELETE /*+label(mydeletequery)*/ FROM t WHERE a = 1; | SELECT identifier, query from query_profiles; (5 rows)