-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathScripts de relatório.sql
53 lines (42 loc) · 1.23 KB
/
Scripts de relatório.sql
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
--Selecionar nome de usuário e associar ao acesso feito
SELECT b.first_name, a.sala_acesso, a.data_acesso FROM auth_user as b
INNER JOIN
(
SELECT *
FROM monitoramento_registro
)AS a
ON b.id=a.usuario_id;
--Horas acessadas em ordem (pegar mais cedo e mais tarde)
SELECT a.first_name, a.last_name, to_char(b.data_acesso, 'DD/MM HH24:MI'),
to_char(b.data_acesso, 'HH24:MI') as Hora
FROM monitoramento_registro as b
INNER JOIN
(
SELECT *
FROM auth_user
)AS A
on b.usuario_id = a.id
ORDER BY Hora ASC;
--Checar hora mais acessada
SELECT EXTRACT (HOUR FROM data_acesso) as Hora,COUNT(*) AS Quantidade
FROM monitoramento_registro
GROUP BY EXTRACT (HOUR FROM data_acesso)
ORDER BY Quantidade DESC
LIMIT 5;
--Checar hora menos acessada
SELECT EXTRACT (HOUR FROM data_acesso) as Hora,COUNT(*) AS Quantidade
FROM monitoramento_registro
GROUP BY EXTRACT (HOUR FROM data_acesso)
ORDER BY Quantidade ASC
LIMIT 10;
--Checar dia mais acessado
SELECT EXTRACT (DAY FROM data_acesso) as Dia,COUNT(*) AS Quantidade
FROM monitoramento_registro
GROUP BY EXTRACT (DAY FROM data_acesso)
ORDER BY Quantidade DESC
LIMIT 5;
SELECT date(data_acesso) as Dia,COUNT(*) AS Quantidade
FROM monitoramento_registro
GROUP BY date(data_acesso)
ORDER BY Quantidade DESC
LIMIT 5;