Questão FC295882
Considere que um banco de dados foi criado para dar apoio à avaliação de instrumentos e políticas de gestão de trânsito no Brasil, nos últimos cinco anos. Os dados foram organizado
Linguagem SQL
CESGRANRIO · 2024
Considere que um banco de dados foi criado para dar apoio à avaliação de instrumentos e políticas de gestão de trânsito no Brasil, nos últimos cinco anos. Os dados foram organizados e persistidos nas três seguintes tabelas, definidas de acordo com modelo relacional de dados: SINISTRO, com dados dos acidentes de trânsito; MUNICIPIO, com dados de municípios; e RODOVIA, com dados de rodovias estaduais e federais.
SINISTRO (cod-sinistro, data-e-hora, localizacao, cod-rodovia, cod-municipio, quantidade-de-vitimas)
RODOVIA (cod-rodovia, nome, estadual-ou-federal)
MUNICIPIO (cod-municipio, uf, quantidade-de-habitantes)
Os atributos que formam as chaves primárias de cada tabela estão sublinhados.
Na tabela SINISTRO, há duas chaves estrangeiras: cod-rodovia, que indica onde ocorreu o sinistro, caso ele tenha ocorrido em uma rodovia, e cod-municipio, que indica em que municipio ocorreu o sinistro.
Nesse contexto, considere o seguinte comando SQL:
SELECT S.cod-rodovia, S.data-e-hora, quantidade-de-vitimas
FROM SINISTRO S
WHERE S.cod-rodovia IN (
SELECT R.cod-rodovia
FROM RODOVIA R
WHERE R.estadual-ou-federal = 'federal')
AND EXISTS (
SELECT *
FROM MUNICIPIO M
WHERE M.cod-municipio = S.cod-municipio
AND M.quantidade-de-habitantes < 50000)
Os resultados produzidos pela execução desse comando apresentam o código da rodovia, a data e hora e a quantidade de vítimas de sinistros ocorridos em
- rodovias federais que passam por municípios com menos de 50.000 habitantes.
- rodovias federais, em municípios com menos de 50.000 habitantes.
- rodovias federais que têm como origem ou destino municípios com menos de 50.000 habitantes.
- município com menos de 50.000 habitantes ou em rodovias federais.
- município com menos de 50.000 habitantes com duas ou mais rodovias federais.
Mostrar resposta e comentário
Gabarito
B
Comentário do professor
A consulta retorna o código da rodovia, a data-e-hora e a quantidade-de-vitimas dos sinistros ocorridos em rodovias federais que aconteceram em municípios com menos de 50.000 habitantes.
O filtro IN (na subconsulta sobre RODOVIA) seleciona apenas sinistros cujo cod-rodovia pertence ao conjunto de rodovias marcado como federal.
Em seguida, o predicado EXISTS (com subconsulta correlacionada em MUNICIPIO) verifica se existe um município com mesmo cod-municipio do sinistro e com quantidade-de-habitantes < 50000.
Assim, apenas tuplas de SINISTRO que satisfazem ambas as condições (rodovia federal e município menor que 50.000 habitantes) são projetadas, e a cláusula SELECT retorna os três atributos solicitados.
Conteúdo do catálogo FC Concursos · Atualizado em