![]() |
|
Instruções CaseAs instruções Case são blocos de criação para criar expressões condicionais que podem produzir resultados diferentes para valores de colunas diferentes. Case (Switch)Este formato da instrução Case também é designado como formato CASE (Lookup). O valor da expressão1 é examinado, em seguida, as expressões WHEN. Se a expressão1 corresponder a qualquer expressão WHEN, o valor é atribuído na expressão THEN correspondente. Se a expressão1 corresponder a uma expressão em mais do que uma cláusula WHEN, só é atribuída a expressão a seguir à primeira correspondência. Se nenhuma das expressões WHEN tiver correspondência, é atribuído o valor especificado na expressão ELSE. Se nenhuma expressão ELSE for especificada, atribui 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. Tem de ser seguido de uma expressão e uma ou mais instruções WHEN e THEN, uma instrução ELSE opcional e palavra-chave END. WHEN Especifica a condição a satisfazer. THEN Especifica o valor a atribuir se a expressão WHEN correspondente for satisfeita. ELSE Especifica o valor a atribuir se nenhuma das condições WHEN for satisfeita. Se a instrução for omitida, é assumida a instrução ELSE NULL. END Termina a instrução CASE. Exemplo CASE par-pontuação WHEN -5 THEN 'Birdie no par 6' WHEN -4 THEN 'Deve ser Tiger' 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 têm de refletir uma qualidade exata; a seguinte condição WHEN WHEN < 0 THEN 'Abaixo do par' é ilegal uma vez que os operadores de comparação não são permitidos. Case (If)Este formato da instrução Case devolve cada condição WHEN e se for satisfeita, atribui o valor na expressão THEN correspondente. Se nenhuma das condições WHEN for satisfeita, atribui o valor predefinido especificado na expressão ELSE. Se nenhuma expressão ELSE for especificada, atribui o valor NULL. Consulte também a instrução Case (Switch). Sintaxe: CASE WHEN condição_pedido1 THEN expressão1 {WHEN condição_pedido2 THEN expressão2} {WHEN condição_pedido... THEN expressão...} ELSE expressão END Em que: CASE Inicia a instrução CASE. Tem de ser seguido de uma ou mais instruções WHEN e THEN, uma instrução ELSE opcional e a palavra-chave END. WHEN Especifica a condição a satisfazer. THEN O valor a atribuir se a expressão WHEN correspondente for satisfeita. ELSE Especifica o valor se nenhuma das condições WHEN for satisfeita. Se a instrução for omitida, é assumida a instrução ELSE NULL. END Termina a instrução CASE. Exemplo CASE WHEN par-pontuação < 0 THEN 'Abaixo do par' WHEN par-pontuação = 0 THEN 'Par' WHEN par-pontuação = 1 THEN 'Bogie' WHEN par-pontuação = 2 THEN 'Duplo Bogey' ELSE 'Triplo Bogey ou pior' END Ao contrário do formato Switch da instrução CASE, as instruções WHEN no formato If permitem operadores de comparação; a seguinte condição WHEN WHEN < 0 THEN 'Abaixo do par' é legal. |
Publicado em Agosto 2018 | Copyright © 2005, 2018, Oracle. Todos os direitos reservados. Legal Notices. |