Considere a seguinte tabela de um banco de dados chamada Pes...
id nome sobrenome idade 1 Paulo Silva 17 2 Maria Souza 20 3 Pedro Henrique 30
Assinale o SQL correto que extrai as informações nome, sobrenome e idade da tabela Pessoa, considerando somente os registros que possuem idade maior que 18 e ordenando por ordem decrescente de idade.
Gabarito comentado
Confira o gabarito comentado por um dos nossos professores
Alternativa Correta: E - SELECT nome, sobrenome, idade FROM Pessoa WHERE idade > 18 ORDER BY idade DESC
Vamos analisar a questão proposta, que envolve o uso de comandos SQL para manipulação de dados em banco de dados relacionais. O tema central aqui é a extração de dados utilizando condições de filtragem e ordenação.
Resumo Teórico:
O SQL (Structured Query Language) é uma linguagem de programação utilizada para gerenciar e manipular dados em sistemas de gerenciamento de banco de dados relacionais (SGBDR). Os comandos SQL permitem realizar operações como seleção, inserção, atualização e exclusão de dados.
Na questão em análise, estamos interessados em utilizar o comando SELECT para extrair informações específicas de uma tabela, aplicando condições de filtragem com o WHERE e definindo a ordem dos resultados com o ORDER BY.
Explicação da Alternativa Correta:
A alternativa E é a correta porque ela atende a todos os requisitos do enunciado:
- SELECT nome, sobrenome, idade: extrai apenas as colunas solicitadas.
- FROM Pessoa: especifica a tabela de onde os dados serão retirados.
- WHERE idade > 18: aplica a condição de que apenas as pessoas com idade maior que 18 anos devem ser consideradas.
- ORDER BY idade DESC: ordena os resultados de forma decrescente com base na idade.
Análise das Alternativas Incorretas:
A - SELECT * FROM Pessoa ORDER BY idade DESC:
Esta alternativa está incorreta porque não filtra os registros por idade maior que 18, resultando na seleção de todos os registros da tabela.
B - SELECT * FROM Pessoa WHERE idade BETWEEN 1 AND 18 ORDER BY idade:
Esta alternativa está incorreta porque seleciona registros com idade entre 1 e 18, quando o enunciado pede por idades maiores que 18.
C - SELECT nome, sobrenome, idade FROM Pessoa WHERE idade > 18 ORDER BY idade:
Embora esta alternativa filtre corretamente por idade, ela ordena os resultados de forma crescente (ASC é implícito), ao contrário da ordem decrescente solicitada.
D - SELECT nome, sobrenome FROM Pessoa WHERE id > 18 ORDER BY idade:
Esta alternativa está incorreta por dois motivos: utiliza a coluna id em vez da coluna idade para a filtragem e não inclui a coluna idade na seleção, como requisitado.
Estratégias de Interpretação:
Para resolver questões de SQL, é fundamental entender claramente o que a questão pede em termos de seleção de colunas, condições de filtragem e ordenação. Ler o enunciado com atenção e sublinhar os requisitos chave pode ajudar a evitar erros comuns.
Gostou do comentário? Deixe sua avaliação aqui embaixo!
Clique para visualizar este gabarito
Visualize o gabarito desta questão clicando no botão abaixo