条件付きの値を指定します。単純なCASE式と検索対象のCASE式がサポートされています。CASE式は、式を任意の場所で指定でき、必要に応じて何度でも使用できます。
一連のIF文を使用するかわりに、CASE式を使用すると、条件が満たされた場合に適切な値を返す一連の条件を使用できます。CASE式を使用すると、問合せを簡略化し、効率のよいコードを記述できます。
SQL構文
検索対象のCASE式の構文は、次のとおりです。
CASE {WHENSearchCondition
THENExpression1
}[…] [ELSEExpression2
] END
単純なCASE式の構文は、次のとおりです。
CASEExpression
{WHENCompExpression
THENExpression1
}[…] [ELSEExpression2
] END
パラメータ
CASEには、次のパラメータがあります。
パラメータ | 説明 |
---|---|
WHEN SearchCondition |
検索条件を指定します。この句は副問合せを指定できません。 |
WHEN CompExpression |
比較するオペランドを指定します。 |
Expression |
各CompExpressionと比較する最初のオペランドを指定します。 |
THEN Expression1 |
結果の式を指定します。 |
ELSE Expression2 |
条件を満たさない場合の結果の式を指定します。 ELSE句を指定しないと、TimesTenによってELSE NULL句が式に追加されます。 |
説明
CASE式は、INSERT文の値の句の中では指定できません。
例
色の値を指定する検索対象のCASE文を指定するには、次の文を使用します。
SELECT CASE WHEN color=1 THEN 'red' WHEN color=2 THEN 'blue' ELSE 'yellow' END FROM cars;
色の値を指定する単純なCASE文を指定するには、次の文を使用します。
SELECT CASE color WHEN 1 THEN 'red' WHEN 2 THEN 'blue' ELSE 'yellow' END FROM cars;