Error Conditions - Advanced SQL Engine - Teradata Database

SQL Functions, Expressions, and Predicates

Product
Advanced SQL Engine
Teradata Database
Release Number
17.05
17.00
Published
June 2020
Language
English (United States)
Last Update
2021-01-30
dita:mapPath
tpt1555966086716.ditamap
dita:ditavalPath
lze1555437562152.ditaval
dita:id
B035-1145
lifecycle
previous
Product Category
Teradata Vantageā„¢

The following conditions or expressions are considered illegal in a CASE expression:

Condition or Expression Example
A condition after the keyword CASE is supplied.
SELECT CASE a=1
        WHEN 1
        THEN 1
        ELSE 0
        END
FROM t;
A non valid WHEN expression is supplied in a valued CASE expression.
SELECT CASE a
        WHEN a=1
        THEN 1 
        ELSE 0 
       END 
FROM t;
A non valid WHEN condition is supplied in a searched CASE expression.
SELECT CASE 
        WHEN a
        THEN 1 
        ELSE 0 
       END 
FROM t;
SELECT CASE
        WHEN NULL
        THEN 'NULL'
       END
FROM table_1;
A non-scalar subquery is specified in a WHEN condition of a searched CASE expression.
SELECT CASE 
        WHEN t.a IN 
         (SELECT u.a 
          FROM u)
        THEN 1 
        ELSE 0 
       END 
FROM t;
A CASE expression references multiple UDTs that are not identical to each other.
SELECT CASE t.shape.gettype()
        WHEN 1 
        THEN NEW circle('18,18,324')
        WHEN 2
        THEN NEW square('20,20,400')
       END;