Pular para o conteúdo principal

Questão de Banco de Dados — SQL — CEPS-UFPA 2022

Banco de DadosSQL
Código
gp036571
Banca
CEPS-UFPA
Órgão
UFPA
Ano
2022
Cargo
CEPS - - Analista de Tecnologia da Informação / Área: Governança de TI
A unidade gestora de Tecnologia da Informação de uma Instituição de Ensino Superior decidiu implantarmelhoria de processos de serviços por meio do registro e controle de atendimento de chamados.Considere o objetivo de se desenvolver um programa que produz um relatório de administraçãoacadêmica contendo um diagrama como o apresentado a seguir (com dados fictícios). No eixo horizontal,são listados os meses do ano; e, no eixo vertical, é apresentado o número de chamados que nãoatenderam ao nível de serviço estabelecido pela organização. Imagem associada para resolução da questão Deve-se supor a existência do esquema de banco de dados composto pelas tabelas a seguir (em SQL):DROP TABLE IF EXISTS chamado; create table chamado(idchamado int NOT NULL, duracao float, mes int, PRIMARY KEY (idchamado), FOREIGN KEY (mes) REFERENCES mes(idmes)); DROP TABLE IF EXISTS mes; create table mes(idmes int NOT NULL, numMes int, ano int, PRIMARY KEY (idmes)); Com base no esquema de banco de dados fornecido, considerando que o tempo limite para o atendimentodos chamados é estabelecido em 2 horas, a consulta SQL que apresenta como resultado os dadosnecessários para a produção do gráfico acima é
  1. Aselect mes.numMes, chamado.idChamado from mes,chamado;
  2. Bselect mes.numMes, count(DISTINCT chamado.idchamado) as total_por_mes from mes,chamado where (chamado.mes = mes.idmes) AND (chamado.duracao > 2.0) group by mes.numMes;
  3. Cselect mes.numMes, count(DISTINCT chamado.idchamado) as total_por_mes from mes,chamado where (chamado.duracao < 2.0) group by mes.numMes;
  4. Dselect mes.numMes, count(DISTINCT chamado.idchamado) as total_por_mes from mes,chamado where (chamado.duracao > 2.0) group by mes.numMes;
  5. Eselect mes.numMes, count(chamado.idchamado) as total_por_mes from mes,chamado where (chamado.duracao > 2.0) group by mes.numMes;
Revelar gabarito e comentário

GabaritoB — select mes.numMes, count(DISTINCT chamado.idchamado) as total_por_mes from mes,chamado where (chamado.mes = mes.idmes) AND (chamado.duracao > 2.0) group by mes.numMes;

Link permanente: /questoes/gp036571