Pular para o conteúdo
Visualizando 3 posts - 1 até 3 (de 3 do total)
  • Autor
    Posts
  • #102911
    Anônimo

      Olá pessoal,
      gostaria da ajuda de vocês, pois preciso fazer a extração de alguns dados de uma tabela onde os mesmos são gravados de 15 em 15 minutos, mas eu preciso visualizá-los de hora em hora, por exemplo:

      Eu tenho todos os dados gravados na tabela XYZ de 15 em 15 minutos, mas preciso fazer um select onde eu consiga agrupar o campo data para trazer apenas uma linha, onde o campo DATA referencia que a linha é do pexíodo x e os outros campos eu vou somar os totais….

      | DATA | LOG | QTDE |
      25/02/2012 09:00:00 | 01 | 12
      25/02/2012 09:15:00 | 02 | 03
      25/02/2012 09:30:00 | 03 | 01
      25/02/2012 09:45:00 | 04 | 04
      25/02/2012 15:00:00 | 05 | 00
      25/02/2012 15:15:00 | 06 | 12
      25/02/2012 15:30:00 | 07 | 12
      25/02/2012 15:45:00 | 08 | 12

      | DATA | LOG | QTDE |
      25/02/2012 09:59:59 | —- | 20
      25/02/2012 15:59:59 | —- | 36

      Eu só não sei como posso fazer para agrupar ou fazer com que a data apareça da forma que preciso.

      Aproveito para pedir indicações de alguma escola boa em SP para aprender PL SQL, eu estou matriculado na IT Trainning, mas o curso está demorando pra formar turma (+ de um mês esperando) e como vocês podem ver eu preciso urgente deste curso.

      PS.: Segue abaixo a query que eu fiz, mas não consigo agrupar a data.

      SELECT
      CALLTYPEKEY,
      RECORDTIMESTAMP AS DATA1, –INTERVAL (Preciso agrupar este campo)
      SUM( CALLSRECEIVED) RECEBIDAS,
      SUM( CALLSANSWERED) ATENDIDAS,
      SUM( NUMABANDONED) ABANDONADAS, –CALLS ABANDONED
      TO_CHAR (TO_DATE (‘1/1/1900′,’DD-MM-YYYY’) + SUM( TME),’HH24:MI:SS’) AS TME, –TME
      TO_CHAR (TO_DATE (‘1/1/1900′,’DD-MM-YYYY’) + SUM( TMC),’HH24:MI:SS’) AS TMC, –TMC
      TO_CHAR (TO_DATE (‘1/1/1900′,’DD-MM-YYYY’) + SUM( TMAB),’HH24:MI:SS’) AS TMAB, –TMAB
      TO_CHAR (TO_DATE (‘1/1/1900′,’DD-MM-YYYY’) + SUM( TSF),’HH24:MI:SS’) AS TSF_TEMPO, –TSF Time
      TO_CHAR (TO_DATE (‘1/1/1900′,’DD-MM-YYYY’) + SUM( TSFCUSTOMER),’HH24:MI:SS’) AS TSF_CLIENTE, –TSF Customer
      ABANDONED1+ABANDONED2 AS ABANDONO_ATE_20,
      ABANDONED3+ABANDONED4+ABANDONED5 AS ABANDONO_MAIOR_20,
      NUMREDIRECTEDOUTSCOPE AS TRANSBORDO
      FROM
      (SELECT
      RECORDTIMESTAMP+(SiteTZoffset/1440) AS RECORDTIMESTAMP, –INTERVAL
      SiteTZoffset,
      CTFM.ARRIVALSITE,
      CTFM.CALLTYPEKEY AS CALLTYPEKEY,
      CTFM.NUMRECEIVED+CTFM.NUMRECEIVEDNETIN AS CALLSRECEIVED,
      CTFM.NUMANSWEREDPRIM+CTFM.NUMANSWEREDOVER AS CALLSANSWERED,
      CTFM.NUMABANDONED, –CALLS ABANDONED
      CTFM.NUMREDIRECTEDOUTSCOPE, —
      DECODE(CTFM.NUMRECEIVED+CTFM.NUMRECEIVEDNETIN,0,0,CTFM.NUMABANDONED/(CTFM.NUMRECEIVED+CTFM.NUMRECEIVEDNETIN)*100) AS ABANDONRATE, –ABANDON PERCENT
      CTFM.ANSWERED1,
      CTFM.ANSWERED2,
      CTFM.ANSWERED3,
      CTFM.ANSWERED4,
      CTFM.ANSWERED5,
      CTFM.ABANDONED1,
      CTFM.ABANDONED2,
      CTFM.ABANDONED3,
      CTFM.ABANDONED4,
      CTFM.ABANDONED5,
      DECODE((CTFM.NUMANSWEREDPRIM+CTFM.NUMANSWEREDOVER),0,0,(CTFM.USERSINVOLVEDTIME/(CTFM.NUMANSWEREDPRIM+CTFM.NUMANSWEREDOVER)))/60/60/24 AS TMC, –TMC
      DECODE(CTFM.NUMABANDONED,0,0,CTFM.TOTABANWAITTIME/CTFM.NUMABANDONED)/60/60/24 AS TMAB, –TMAB
      CTFM.MAXABANWAITTIME, –MAXIMUM AMOUNT OF TIME A CALLER HAD TO WAIT BEFORE THEY ABANDONED THE CONTACT
      DECODE((CTFM.NUMANSWEREDPRIM+CTFM.NUMANSWEREDOVER),0,0,(CTFM.TOTANSWAITTIME/(CTFM.NUMANSWEREDPRIM+CTFM.NUMANSWEREDOVER)))/60/60/24 AS TME, –TME
      CTFM.MAXANSWAITTIME, –MAXIMUM AMOUNT OF TIME A CALLER HAD TO WAIT BEFORE TO BE ANSWERED
      0 AS NUMLOGGEDONAGTS, –MAXIMUM NUMBER OF AGENTS LOGGEDON
      DECODE((CTFM.NUMANSWEREDPRIM+CTFM.NUMANSWEREDOVER),0,0,(CTFM.ANSWERED1+CTFM.ANSWERED2/(CTFM.NUMANSWEREDPRIM+CTFM.NUMANSWEREDOVER)))/60/60/24 AS TSF, –TSF Time
      DECODE((CTFM.NUMANSWEREDPRIM+CTFM.NUMANSWEREDOVER+CTFM.NUMABANDONED),0,0,((CTFM.ANSWERED1+CTFM.ANSWERED2+CTFM.ABANDONED1+CTFM.ABANDONED2)/(CTFM.NUMANSWEREDPRIM+CTFM.NUMANSWEREDOVER+CTFM.NUMABANDONED)))/60/60/24 AS TSFCUSTOMER –TSF Customer
      FROM
      ETLOSCC.CALLTYPEFIFTEENMIN CTFM
      WHERE
      CTFM.CALLTYPEKEY IN (302)
      AND CTFM.RECORDTIMESTAMP BETWEEN TO_DATE(’01-JAN-2012′,’DD-MM-YYYY HH24:MI:SS’) AND TO_DATE(’31-JAN-2012 08:30:00′,’DD-MM-YYYY HH24:MI:SS’)
      )
      GROUP BY
      CALLTYPEKEY,
      RECORDTIMESTAMP,
      ABANDONED1,
      ABANDONED2,
      ABANDONED3,
      ABANDONED4,
      ABANDONED5,
      NUMREDIRECTEDOUTSCOPE

      Agradeço desde já.

      Daniel Souza

      #102912
      burga
      Participante

        se você quer por hora, pode dar um

        group by to_char(campo_data, ‘dd/mm/yyyy hh24’)

        #102913
        Anônimo

          [quote=”burga”:28u8u22c]se você quer por hora, pode dar um

          group by to_char(campo_data, ‘dd/mm/yyyy hh24’)[/quote]

          Muito obrigado Ricardo, eu até tentei usar dessa forma, mas escrevi a sintaxe de forma errada e ele não estava trazendo o que eu queria, agora ficou perfeito.

          Obrigado mesmo.

          Abraços.

        Visualizando 3 posts - 1 até 3 (de 3 do total)
        • Você deve fazer login para responder a este tópico.
        plugins premium WordPress