15.10 - Example: Setting a Query Band Using FOR SESSION VOLATILE - Teradata Database

Teradata Database SQL Data Definition Language Syntax and Examples

Product
Teradata Database
Release Number
15.10
Published
December 2015
Language
English (United States)
Last Update
2018-06-05
dita:mapPath
SQL_DDL_15_10.ditamap
dita:ditavalPath
ft:empty

This example sets a FOR SESSION VOLATILE query band, verifies that the query band set is what was intended, and then shows that when you specify FOR SESSION VOLATILE, Teradata Database does not update DBC.SessionTbl, which makes the performance of the FOR SESSION request as good as if it were a FOR TRANSACTION request.

     SET QUERY_BAND = 'city=laquinta;cat=asta;tree=maple;' 
     FOR SESSION VOLATILE;
      *** Set QUERY_BAND accepted. 
      *** Total elapsed time was 1 second.

The query band is now 'city=laquinta;cat=asta;tree=maple;', as the following procedure call demonstrates.

     CALL syslib.GetQueryBandSP(qb);
      *** Procedure has been executed. 
      *** Total elapsed time was 1 second.
     QueryBand
     -----------------------------------------------------------------
     =S> city=laquinta;cat=asta;tree=maple;

The following SELECT request shows that there are no rows in DBC.SessionTbl, which is the desired result when you specify FOR SESSION VOLATILE.

     SELECT queryband 
     FROM DBC.SessionTbl 
     WHERE queryband IS NOT NULL 
     AND   CHAR_LENGTH(queryband) > 0;
*** Query completed. No rows found. 
*** Total elapsed time was 1 second.