![]() |
|
Instruções CaseAs instruções Case são a base para criar expressões condicionais que podem produzir resultados diferentes para valores de coluna diferentes. Case (Switch)Essa forma de instrução Case é também chamada de CASE (Lookup). O valor da expressão 1 é examinada, em seguida, as expressões WHEN. Se a expressão 1 corresponder a qualquer expressão WHEN, ela atribuirá o valor na expressão THEN correspondente. Se a expressão 1 corresponder a uma expressão em mais de uma cláusula WHEN, apenas a expressão que segue a primeira correspondência será atribuída. Se nenhuma das expressões WHEN corresponder, ela atribuirá o valor especificado na expressão ELSE. Se nenhuma expressão ELSE for especificada, ela atribuirá o valor NULL. Consulte também a instrução Case (If). Sintaxe: CASE expressão1 WHEN expressão THEN expressão {WHEN expressão... THEN expressão...} ELSE expressão END Em que: CASE Inicia a instrução CASE. Deve ser seguida de uma expressão e uma ou mais instruções WHEN e THEN, uma instrução ELSE opcional e a palavra-chave END. WHEN Especifica a condição a ser satisfeita. THEN Especifica o valor a ser atribuído se a expressão WHEN correspondente for satisfeita. ELSE Especifica o valor a ser atribuído se nenhuma das condições WHEN for satisfeita. Se omitido, será assumido o ELSE NULL. END Termina a instrução CASE. Exemplo CASE Score-par WHEN -5 THEN 'Birdie no Par 6' WHEN -4 THEN 'É campeão' WHEN -3 THEN 'Três abaixo do par' WHEN -2 THEN 'Dois abaixo do par' WHEN -1 THEN 'Birdie' WHEN 0 THEN 'Par' WHEN 1 THEN 'Bogey' WHEN 2 THEN 'Duplo Bogey' ELSE 'Triplo Bogey ou pior' END No exemplo acima, as instruções WHEN devem refletir uma igualdade estrita; uma condição WHEN de WHEN < 0 THEN 'Abaixo do par' é ilegal, porque os operadores de comparação não são permitidos. Case (If)Essa forma de instrução Case avalia cada condição WHEN e, se satisfeita, atribui o valor da expressão THEN correspondente. Se nenhuma das condições WHEN for satisfeita, ela atribuirá o valor padrão especificado na expressão ELSE. Se nenhuma expressão ELSE for especificada, ela atribuirá o valor NULL. Consulte também a instrução Case (Switch). Sintaxe: CASE WHEN condição_exigida1 THEN expressão1 {WHEN condição_exigida2 THEN expressão2} {WHEN condição_exigida... THEN expressão...} ELSE expressão END Em que: CASE Inicia a instrução CASE. Deve ser seguida de uma expressão e uma ou mais instruções WHEN e THEN, uma instrução ELSE opcional e a palavra-chave END. WHEN Especifica a condição a ser satisfeita. THEN Especifica o valor a ser atribuído se a expressão WHEN correspondente for satisfeita. ELSE Especifica o valor a ser atribuído se nenhuma das condições WHEN for satisfeita. Se omitido, será assumido o ELSE NULL. END Termina a instrução CASE. Exemplo CASE WHEN score-par < 0 THEN 'Abaixo do par' WHEN score-par = 0 THEN 'Par' WHEN score-par = 1 THEN 'Bogie' WHEN score-par = 2 THEN 'Duplo Bogey' ELSE 'Triplo Bogey ou pior' END Ao contrário da forma Switch da instrução CASE, as instruções WHEN na forma If permitem operações de comparação; uma condição WHEN de WHEN < 0 THEN 'Abaixo do par' é legal. |
Publicado em Otubro de 2016 | Copyright © 2005, 2016, Oracle. Todos os direitos reservados. Legal Notices. |