17.10 - Rules for Order of Evaluation - Advanced SQL Engine - Teradata Database

Teradata Vantageā„¢ - SQL Functions, Expressions, and Predicates

Advanced SQL Engine
Teradata Database
Release Number
Release Date
July 2021
Content Type
Programming Reference
Publication ID
English (United States)
The following rules apply to evaluation order for conditional expressions:
  • If an expression contains more than one of the same operator, the evaluation precedence is left to right.
  • If an expression contains a combination of logical operators, the order of evaluation is as follows:



  • Parentheses can be used to establish the desired evaluation precedence.
  • The logical expressions in a conditional expression are not always evaluated left to right.

    Avoid using a conditional expression if its accuracy depends on the order in which its logical expressions are evaluated.

    For example, compare the following two expressions:

       F2/(NULLIF(F1,0)) > 500
       F1 <> 0 AND F2/F1 > 500

    The first expression guarantees exclusion of division by zero.

    The second allows the possibility of error, because the order of its evaluation determines the exclusion of zeros.