検索CASE文 - Advanced SQL Engine - Teradata Database

Teradata Vantage™ - SQLストアド プロシージャおよび埋め込みSQL

Product
Advanced SQL Engine
Teradata Database
Release Number
17.10
Published
2021年7月
Language
日本語
Last Update
2021-09-23
dita:mapPath
ja-JP/vqj1592443206677.ditamap
dita:ditavalPath
ja-JP/wrg1590696035526.ditaval
dita:id
B035-1148
Product Category
Software
Teradata Vantage

この形式のCASE文は、WHEN句内の条件式の評価が真となると文のリストを実行します。最大限1つのWHEN句またはELSE句に関連した文を実行できます。

WHEN句は、CASE文内に指定されている順序で評価されます。評価のプロセスは次のとおりです。

  1. 最初のWHEN句が評価されます。
    • WHEN句に指定されている条件式が真であれば、そのWHEN句の文が実行されます。
    • ストアド プロシージャ内の次の文に制御権が移動します。

    値式が真ではない場合、次のWHEN句が存在すればその句が評価されます。

  2. 後続のすべてのWHEN句は、ステップ1で説明した方法で評価されます。
  3. 評価するWHEN句がもうなくなった場合に、ELSE句が存在すればそれが新たな対象とされ、そのELSE句の文が実行されます。

    ストアド プロシージャ内の次の文に制御権が移動します。

  4. ELSE句がない場合に、どのWHEN句内の条件式の評価も真とならなかったときは、
    • 実行時例外(”Case not found for CASE statement”, SQLSTATE=’20000’, SQLCODE = 7601)が発生します。
    • CASE文の実行が終了します。