Questão FC372869
A Mesa Diretora da Câmara Legislativa é responsável pela direção dos trabalhos legislativos e dos serviços administrativos da Casa. Compõe-se de presidente, vice-presidente, primei
Linguagem SQL
FCC · 2018
A Mesa Diretora da Câmara Legislativa é responsável pela direção dos trabalhos legislativos e dos serviços administrativos da Casa. Compõe-se de presidente, vice-presidente, primeiro secretário, segundo secretário e terceiro secretário, bem como de três suplentes de secretário.
(Disponível: http://www.cl.df.gov.br/en/web/guest/mesa-diretora)
Considere que na Câmara Legislativa exista um banco de dados funcionando em condições ideais. Considere que exista uma tabela neste banco denominada TabCamara que possua os campos CodDepDistr (inteiro), NomeDepDistr (caracteres), Partido (caracteres), CargoMesaDiretora (caracteres). Caso um deputado distrital não tenha cargo na mesa diretora da câmara o campo fica com NULL.
Uma Analista de Sistemas foi solicitada a fazer uma consulta SQL que resulte na lista de Deputados que possuem cargo na mesa diretora, em ordem alfabética dos nomes dos partidos e, dentro de cada partido, ordenados por nomes. A instrução SQL que realiza esta consulta é:
- SELECT Partido, NomeDepDistr FROM TabCamara WHERE CargoMesaDiretora IS NOT NULL ORDER BY ASC;
- SELECT *.* FROM TabCamara WHERE CargoMesaDiretora IS NOT ‘NULL’ ORDER BY Partido, NomeDepDistr ASC;
- SELECT * FROM TabCamara WHERE CargoMesaDiretora IS NOT EMPTY ORDER BY Partido AND NomeDepDistr ASC;
- SELECT Partido AND NomeDepDistr FROM TabCamara WHERE CargoMesaDiretora IS NULL ORDER BY Partido, NomeDepDistr ASC;
- SELECT * FROM TabCamara WHERE CargoMesaDiretora IS NOT NULL ORDER BY Partido, NomeDepDistr ASC;
Mostrar resposta e comentário
Gabarito
Errado
Comentário do professor
A instrução SELECT * FROM TabCamara retorna todos os campos da tabela TabCamara, o que é adequado quando se quer listar os deputados com seus dados completos.
A condição WHERE CargoMesaDiretora IS NOT NULL filtra corretamente apenas os registros em que o campo CargoMesaDiretora contém um valor, excluindo os que estão com NULL. Em SQL, NULL não pode ser comparado com operadores como = ou <>; deve-se usar IS ou IS NOT.
A cláusula ORDER BY Partido, NomeDepDistr ASC determina a ordenação: primeiro por Partido (ordem alfabética) e, dentro de cada partido, por NomeDepDistr em ordem crescente. O ASC é explícito para o segundo campo (o padrão também é crescente).
Assim, a consulta reúne corretamente o critério de seleção (ter cargo na mesa) e a ordenação desejada (por partido e, dentro dele, por nome).
Conteúdo do catálogo FC Concursos · Atualizado em