Sistema de suporte - Banco de dados
Por: iagomohr • 22/5/2018 • Trabalho acadêmico • 410 Palavras (2 Páginas) • 260 Visualizações
Banco de dados
Desenvolva consultas para os seguintes relatórios:
⦁ Tempo médio de atendimento de chamados por departamento.
⦁ Chamados abertos por mês.
⦁ Chamados encerrados por mês.
⦁ Chamado com maior quantidade de atendimentos.
⦁ Quantidade de atendimentos realizados por mês
⦁ Chamados resolvidos por atendente.
⦁ Total de Chamados por Tipo de chamado.
⦁ Listagem de chamados apresentando o Nome do usuário, descrição do departamento do usuário, número do chamado, título do chamado, descrição do tipo de chamado, descrição da prioridade, descrição da situação do chamado, data de abertura, data de fechamento, quantidade de atendimentos, solução, nome do usuário que encerrou o chamado ou que fez o primeiro atendimento.
⦁ Chamados atrasados por mês.
Consultas:
1) Tempo médio de atendimento de chamados por departamento
select d.descricao, AVG(p.tempoAtendimento)
from prioridade p
inner join chamado c on (Prioridade_idPrioridade = p.idPrioridade)
inner join usuario u on (idUsuario = c.Usuario_idUsuario)
inner join departamento d on (idDepartamento = u.Departamento_idDepartamento)
group by (d.descricao);
2) Chamados abertos por mês
select count(c.dtAbertura) as 'Chamados abertos por mês', month(c.dtAbertura) as 'mês'
from chamado c
inner join situacao s on (s.idSituacao = c.Situacao_idSituacao)
group by(Month(c.dtAbertura));
3)Chamados encerrados por mês
select count(c.dtFechamento) as 'Chamados fechados por mês', Month(c.dtFechamento) as 'mês'
from chamado c
inner join situacao s on (s.idSituacao = c.Situacao_idSituacao)
where c.Situacao_idSituacao = 3
group by(c.Situacao_idSituacao);
4)Chamado com maior quantidade de atendimentos
select c.descricao as 'Chamado', count(a.dtAtendimento) as 'Número de atendimentos', max(a.dtAtendimento) as 'Máximo'
from chamado c
inner join atendimento a on (a.idChamado = c.idChamado)
group by(a.idChamado);
5)Quantidade de atendimentos realizados por mês
select count(a.dtAtendimento) as 'Número de atendimentos', Month(a.dtAtendimento) as 'Mês'
from atendimento a
group by(Month(dtAtendimento));
6)Chamados resolvidos por atendente
select count(a.dtAtendimento) as 'Número de atendimentos', a.idUsuarioAtendente as 'Atendente'
from atendimento a
group
...