- Este tópico contém 7 respostas, 2 vozes e foi atualizado pela última vez 7 anos, 8 meses atrás por sergiomso.
-
AutorPosts
-
3 de abril de 2017 às 9:03 pm #108683sergiomsoParticipante
Pessoal
Boa tarde
Precisaria de uma ajuda.Tenho a seguinte query que me mostra a qtd de archives que foi gerado durante o dia. Me mostra de hora a hora das 00:00 até as 00:00 outro dia.
ex…
DAY 00-01 01-02 02-03 03-04 04-05
———- ———- ———- ———- ———- ———- assim por diante….
03/04/2017 4 7 11 6 6Exemplo acima das 04-05 me gerou 6 archives.
Queria que me mostra-se somente a hora e qtd archive somente chega-se a 50. Assim eu estaria monitorando os horarios que tem mais archives.Segue a query que eu uso. Esta query tras o dia todo. Onde eu poderia mexer nela para satisfazer essa condição?
SELECT TO_CHAR (COMPLETION_TIME, ‘DD/MM/YYYY’) DAY,
SUM (DECODE (TO_CHAR (COMPLETION_TIME, ‘HH24′), ’00’, 1, NULL)) “00-01”,
SUM (DECODE (TO_CHAR (COMPLETION_TIME, ‘HH24′), ’01’, 1, NULL)) “01-02”,
SUM (DECODE (TO_CHAR (COMPLETION_TIME, ‘HH24′), ’02’, 1, NULL)) “02-03”,
SUM (DECODE (TO_CHAR (COMPLETION_TIME, ‘HH24′), ’03’, 1, NULL)) “03-04”,
SUM (DECODE (TO_CHAR (COMPLETION_TIME, ‘HH24′), ’04’, 1, NULL)) “04-05”,
SUM (DECODE (TO_CHAR (COMPLETION_TIME, ‘HH24′), ’05’, 1, NULL)) “05-06”,
SUM (DECODE (TO_CHAR (COMPLETION_TIME, ‘HH24′), ’06’, 1, NULL)) “06-07”,
SUM (DECODE (TO_CHAR (COMPLETION_TIME, ‘HH24′), ’07’, 1, NULL)) “07-08”,
SUM (DECODE (TO_CHAR (COMPLETION_TIME, ‘HH24′), ’08’, 1, NULL)) “08-09”,
SUM (DECODE (TO_CHAR (COMPLETION_TIME, ‘HH24′), ’09’, 1, NULL)) “09-10”,
SUM (DECODE (TO_CHAR (COMPLETION_TIME, ‘HH24′), ’10’, 1, NULL)) “10-11”,
SUM (DECODE (TO_CHAR (COMPLETION_TIME, ‘HH24′), ’11’, 1, NULL)) “11-12”,
SUM (DECODE (TO_CHAR (COMPLETION_TIME, ‘HH24′), ’12’, 1, NULL)) “12-13”,
SUM (DECODE (TO_CHAR (COMPLETION_TIME, ‘HH24′), ’13’, 1, NULL)) “13-14”,
SUM (DECODE (TO_CHAR (COMPLETION_TIME, ‘HH24′), ’14’, 1, NULL)) “14-15”,
SUM (DECODE (TO_CHAR (COMPLETION_TIME, ‘HH24′), ’15’, 1, NULL)) “15-16”,
SUM (DECODE (TO_CHAR (COMPLETION_TIME, ‘HH24′), ’16’, 1, NULL)) “16-17”,
SUM (DECODE (TO_CHAR (COMPLETION_TIME, ‘HH24′), ’17’, 1, NULL)) “17-18”,
SUM (DECODE (TO_CHAR (COMPLETION_TIME, ‘HH24′), ’18’, 1, NULL)) “18-19”,
SUM (DECODE (TO_CHAR (COMPLETION_TIME, ‘HH24′), ’19’, 1, NULL)) “19-20”,
SUM (DECODE (TO_CHAR (COMPLETION_TIME, ‘HH24′), ’20’, 1, NULL)) “20-21”,
SUM (DECODE (TO_CHAR (COMPLETION_TIME, ‘HH24′), ’21’, 1, NULL)) “21-22”,
SUM (DECODE (TO_CHAR (COMPLETION_TIME, ‘HH24′), ’22’, 1, NULL)) “22-23”,
SUM (DECODE (TO_CHAR (COMPLETION_TIME, ‘HH24′), ’23’, 1, NULL)) “23-00”,
COUNT (*) TOTAL
FROM V$ARCHIVED_LOG
WHERE
ARCHIVED=’YES’
AND TO_CHAR(COMPLETION_TIME,’DD/MM/YYYY’) = TO_CHAR(SYSDATE,’DD/MM/YYYY’)
GROUP BY TO_CHAR (COMPLETION_TIME, ‘DD/MM/YYYY’)
ORDER BY TO_DATE (DAY, ‘DD/MM/YYYY’);3 de abril de 2017 às 9:05 pm #108685sergiomsoParticipanteSegue o exemplo novamente.
DAY 00-01 01-02 02-03 03-04 04-05
03/04/2017 4 7 11 6 6
Saiu ruim segue o anexo
Attachments:3 de abril de 2017 às 10:05 pm #108686spernegaParticipanteBoa tarde,
veja se isso ajuda.
Select DAY,
case when t00_01 > 49 then t00_01 else null end t00_01,
case when t01_02 > 49 then t01_02 else null end t01_02,
case when t02_03 > 49 then t02_03 else null end t02_03,
case when t03_04 > 49 then t03_04 else null end t03_04,
case when t04_05 > 49 then t04_05 else null end t04_05,
case when t05_06 > 49 then t05_06 else null end t05_06,
case when t06_07 > 49 then t06_07 else null end t06_07,
case when t07_08 > 49 then t07_08 else null end t07_08,
case when t08_09 > 49 then t08_09 else null end t08_09,
case when t09_10 > 49 then t09_10 else null end t09_10,
case when t10_11 > 49 then t10_11 else null end t10_11,
case when t11_12 > 49 then t11_12 else null end t11_12,
case when t12_13 > 49 then t12_13 else null end t12_13,
case when t13_14 > 49 then t13_14 else null end t13_14,
case when t14_15 > 49 then t14_15 else null end t14_15,
case when t15_16 > 49 then t15_16 else null end t15_16,
case when t16_17 > 49 then t16_17 else null end t16_17,
case when t17_18 > 49 then t17_18 else null end t17_18,
case when t18_19 > 49 then t18_19 else null end t18_19,
case when t19_20 > 49 then t19_20 else null end t19_20,
case when t20_21 > 49 then t20_21 else null end t20_21,
case when t21_22 > 49 then t21_22 else null end t21_22,
case when t22_23 > 49 then t22_23 else null end t22_23,
case when t23_00 > 49 then t23_00 else null end t23_00
from (
SELECT TO_CHAR (COMPLETION_TIME, ‘DD/MM/YYYY’) DAY,
SUM (DECODE (TO_CHAR (COMPLETION_TIME, ‘HH24′), ’00’, 1, NULL)) t00_01,
SUM (DECODE (TO_CHAR (COMPLETION_TIME, ‘HH24′), ’01’, 1, NULL)) t01_02,
SUM (DECODE (TO_CHAR (COMPLETION_TIME, ‘HH24′), ’02’, 1, NULL)) t02_03,
SUM (DECODE (TO_CHAR (COMPLETION_TIME, ‘HH24′), ’03’, 1, NULL)) t03_04,
SUM (DECODE (TO_CHAR (COMPLETION_TIME, ‘HH24′), ’04’, 1, NULL)) t04_05,
SUM (DECODE (TO_CHAR (COMPLETION_TIME, ‘HH24′), ’05’, 1, NULL)) t05_06,
SUM (DECODE (TO_CHAR (COMPLETION_TIME, ‘HH24′), ’06’, 1, NULL)) t06_07,
SUM (DECODE (TO_CHAR (COMPLETION_TIME, ‘HH24′), ’07’, 1, NULL)) t07_08,
SUM (DECODE (TO_CHAR (COMPLETION_TIME, ‘HH24′), ’08’, 1, NULL)) t08_09,
SUM (DECODE (TO_CHAR (COMPLETION_TIME, ‘HH24′), ’09’, 1, NULL)) t09_10,
SUM (DECODE (TO_CHAR (COMPLETION_TIME, ‘HH24′), ’10’, 1, NULL)) t10_11,
SUM (DECODE (TO_CHAR (COMPLETION_TIME, ‘HH24′), ’11’, 1, NULL)) t11_12,
SUM (DECODE (TO_CHAR (COMPLETION_TIME, ‘HH24′), ’12’, 1, NULL)) t12_13,
SUM (DECODE (TO_CHAR (COMPLETION_TIME, ‘HH24′), ’13’, 1, NULL)) t13_14,
SUM (DECODE (TO_CHAR (COMPLETION_TIME, ‘HH24′), ’14’, 1, NULL)) t14_15,
SUM (DECODE (TO_CHAR (COMPLETION_TIME, ‘HH24′), ’15’, 1, NULL)) t15_16,
SUM (DECODE (TO_CHAR (COMPLETION_TIME, ‘HH24′), ’16’, 1, NULL)) t16_17,
SUM (DECODE (TO_CHAR (COMPLETION_TIME, ‘HH24′), ’17’, 1, NULL)) t17_18,
SUM (DECODE (TO_CHAR (COMPLETION_TIME, ‘HH24′), ’18’, 1, NULL)) t18_19,
SUM (DECODE (TO_CHAR (COMPLETION_TIME, ‘HH24′), ’19’, 1, NULL)) t19_20,
SUM (DECODE (TO_CHAR (COMPLETION_TIME, ‘HH24′), ’20’, 1, NULL)) t20_21,
SUM (DECODE (TO_CHAR (COMPLETION_TIME, ‘HH24′), ’21’, 1, NULL)) t21_22,
SUM (DECODE (TO_CHAR (COMPLETION_TIME, ‘HH24′), ’22’, 1, NULL)) t22_23,
SUM (DECODE (TO_CHAR (COMPLETION_TIME, ‘HH24′), ’23’, 1, NULL)) t23_00,
COUNT (*) TOTAL
FROM V$ARCHIVED_LOG
WHERE ARCHIVED=’YES’
AND TO_CHAR(COMPLETION_TIME,’DD/MM/YYYY’) = TO_CHAR(SYSDATE,’DD/MM/YYYY’)
GROUP BY TO_CHAR (COMPLETION_TIME, ‘DD/MM/YYYY’)
ORDER BY TO_DATE (DAY, ‘DD/MM/YYYY’));3 de abril de 2017 às 10:47 pm #108688sergiomsoParticipantespernega
Obrigado pela ajuda.
Descupe abusar da sua boa bondade
Teria como executar e me trazer somente só os que satifaz a consulta e os que não fazem não trazer, ou seja não trazer a coluna da hora que esta em branco?DAY H13_14 H14_15 H15_16 H16_17 H17_18 H18_19 H19_20
03/04/2017 50
segue o anexo.
Attachments:3 de abril de 2017 às 10:59 pm #108689spernegaParticipantesergiomso,
Dá, mas acho que tem que ser um bloco PL/SQL e não num SELECT simples.
Pode ser?
3 de abril de 2017 às 11:14 pm #108690spernegaParticipantesegue o script, é feio mas acho que funciona…
da pra fazer uma coisa bem mais limpa.
3 de abril de 2017 às 11:16 pm #108692spernegaParticipanteo anexo falhou, segue com extensão txt
Attachments:4 de abril de 2017 às 5:23 pm #108693sergiomsoParticipantespnerga
Muito obrigado pela ajuda
Show de bola o apoio que você me deu. -
AutorPosts
- Você deve fazer login para responder a este tópico.