16.20 - Example: Setting a Query Band Using FOR SESSION VOLATILE - Teradata Database - Teradata Vantage NewSQL Engine

Teradata Vantage™ SQL Data Definition Language Syntax and Examples

Product
Teradata Database
Teradata Vantage NewSQL Engine
Release Number
16.20
Published
March 2019
Language
English (United States)
Last Update
2019-05-24
dita:mapPath
wkf1512081455740.ditamap
dita:ditavalPath
TD_DBS_16_20_Update1.ditaval

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.