Com pertinência à linguagem SQL, julgue o item abaixo.Consid...

Próximas questões
Com base no mesmo assunto
Q2040741 Banco de Dados

Com pertinência à linguagem SQL, julgue o item abaixo.


Considere-se o seguinte script SQL.


select report_code, year, month, day,

wind_speed,

case

     when wind_speed>= 40 then ‘HIGH’

     when wind_speed>= 30 then ‘MODERATE’

else ‘LOW’

end as wind_severity

from station_data



O resultado da execução do script resultará em erro, pois, caso haja, na tabela station_data, algum registro no campo wind_speed com valor superior a 40, não será possível predizer se o valor da variável wind_severity será igual a ‘HIGH’. 

Alternativas

Comentários

Veja os comentários dos nossos alunos

qualquer valor igual ou superior a 40 será respondido como 'HIGH', e os valores entre 30 e 39 serão 'MODERATE'. Portanto não haverá erro...!

O que aparece no resultado da consulta é o primeiro CASE a ser satisfeito.

Errado. O script apresentado não resultará em erro, pois a cláusula "CASE" é usada para definir condições e valores de retorno que são aplicados à coluna "wind_speed". Se houver um registro na tabela "station_data" com um valor de "wind_speed" superior a 40, ele será classificado como "HIGH".

Na cláusula "CASE", as condições são testadas na ordem em que são escritas. Se uma condição é atendida, o valor de retorno associado é retornado e o resto das condições é ignorado. No caso apresentado, se o valor de "wind_speed" for igual ou maior que 40, o resultado será "HIGH", caso contrário, se o valor de "wind_speed" for igual ou maior que 30, o resultado será "MODERATE". Caso nenhuma dessas condições seja atendida, o resultado será "LOW".

Resposta: Errado.

O script não dá erro porque a cláusula "CASE" define condições e valores para a coluna "wind_speed".

Se tiver um registro com "wind_speed" maior que 40, será "HIGH".

- Cláusula "CASE" aplica condições e valores à coluna "wind_speed".

- Condições são testadas na ordem escrita.

- Se "wind_speed" >= 40, resultado é "HIGH".

- Se não, se "wind_speed" >= 30, resultado é "MODERATE".

- Se não, resultado é "LOW".

Clique para visualizar este comentário

Visualize os comentários desta questão clicando no botão abaixo