Pular para o conteúdo
Visualizando 15 posts - 1 até 15 (de 15 do total)
  • Autor
    Posts
  • #103116
    Avatar de ItimuraItimura
    Participante

      Olá pessoal

      Vejam se pode me ajudar, sou iniciante

      Tenho vendedores: Vendedor1, Vendedor2, Vendedor3 e Vendedor4

      quero fazer uma query que me traga a venda destes vendedores e que eu coloque a data inicial e final da pesquisa e cada dia

      Os vendedores devem aparecer em linhas, e os dias em colunas

      os parametros para buscar o valor da venda eu ja tenho, mas não sei como colocar os dias em coluna

      ajuda?!

      obrigado

      #103120
      Avatar de Victor ArmbrustVictor Armbrust
      Mestre

        Opa,

        Segue um exemplo:

        set feed off

        clear break
        col np noprint
        col "00" form 099
        col "01" form 099
        col "02" form 099
        col "03" form 099
        col "04" form 099
        col "05" form 099
        col "06" form 099
        col "07" form 099
        col "08" form 099
        col "09" form 099
        col "10" form 099
        col "11" form 099
        col "12" form 099
        col "13" form 099
        col "14" form 099
        col "15" form 099
        col "16" form 099
        col "17" form 099
        col "18" form 099
        col "19" form 099
        col "20" form 099
        col "21" form 099
        col "22" form 099
        col "23" form 099
        col "DIA" form a5

        select trunc(first_time) np, to_char(first_time,'DD/MM') "DIA",
        sum(decode(to_char(first_time,'HH24'),'00',1,0)) "00" ,
        sum(decode(to_char(first_time,'HH24'),'01',1,0)) "01" ,
        sum(decode(to_char(first_time,'HH24'),'02',1,0)) "02" ,
        sum(decode(to_char(first_time,'HH24'),'03',1,0)) "03" ,
        sum(decode(to_char(first_time,'HH24'),'04',1,0)) "04" ,
        sum(decode(to_char(first_time,'HH24'),'05',1,0)) "05" ,
        sum(decode(to_char(first_time,'HH24'),'06',1,0)) "06" ,
        sum(decode(to_char(first_time,'HH24'),'07',1,0)) "07" ,
        sum(decode(to_char(first_time,'HH24'),'08',1,0)) "08" ,
        sum(decode(to_char(first_time,'HH24'),'09',1,0)) "09" ,
        sum(decode(to_char(first_time,'HH24'),'10',1,0)) "10" ,
        sum(decode(to_char(first_time,'HH24'),'11',1,0)) "11" ,
        sum(decode(to_char(first_time,'HH24'),'12',1,0)) "12" ,
        sum(decode(to_char(first_time,'HH24'),'13',1,0)) "13" ,
        sum(decode(to_char(first_time,'HH24'),'14',1,0)) "14" ,
        sum(decode(to_char(first_time,'HH24'),'15',1,0)) "15" ,
        sum(decode(to_char(first_time,'HH24'),'16',1,0)) "16" ,
        sum(decode(to_char(first_time,'HH24'),'17',1,0)) "17" ,
        sum(decode(to_char(first_time,'HH24'),'18',1,0)) "18" ,
        sum(decode(to_char(first_time,'HH24'),'19',1,0)) "19" ,
        sum(decode(to_char(first_time,'HH24'),'20',1,0)) "20" ,
        sum(decode(to_char(first_time,'HH24'),'21',1,0)) "21" ,
        sum(decode(to_char(first_time,'HH24'),'22',1,0)) "22" ,
        sum(decode(to_char(first_time,'HH24'),'23',1,0)) "23"
        from v$loghist
        group by trunc(first_time), to_char(first_time,'DD/MM')
        order by 1
        /

        Neste select, é mostrado o NUMERO DE REDO LOGS ESCRITOS POR DIA DO MES , separados por Data/Horário.

        Serve de exemplo ai pra você…

        Abs
        Victor DBA

        #103132
        Avatar de ItimuraItimura
        Participante

          Poxa obrigado pela resposta, mas eu me confundi no momento de pegar a tarefa com ele (o gerente de vendas)

          a real segue a baixo

          tenho uma tabela chamada TB_PEDIDOS (tabela armazena dados resumidos de pedidos enviados dos vendedores na rua para a empresa)

          nesta tabela TB_PEDIDOS tenho os seguintes campos que usarei
          – VENDEDOR: Vendedor1, Vendedor2, Vendedor3, Vendedor4, Vendedor5……..
          – DATA_PEDIDO: Data do envio do pedido
          – HORA: hora do envio do pedido

          Preciso apresentar para o gerente de vendas o ULTIMO horario enviado pelos vendedores em um resumo simples. ELE indicará a data inicial e a data final para pesquisa

          A Data deve vir em colunas
          Os vendedores em linhas

          Dessa forma ficaria:

          VENDEDOR, DIA1, DIA2, DIA3, DIA4, DIA5.. até a Dt final que foi indicad
          Vendedor1 5:00 6:00 12:00 18:00…………..
          Vendedor2
          Vendedor3
          Vendedor4
          Vendedor5

          e assim…. não tenho a minima idéia de como começar

          alguém pode me ajudar a solucionar? é o primeiro trabalho que ele me pede para fazer, e creio eu que esta valendo uma vaga na equipe de TI dele

          Sei fazer alguns relatórios, mas assim dessa forma, to a perigo!!

          Obrigado a todos, por favor se não entenderem me de um toque que eu tento refazer!

          abraço a todos

          #103135
          Avatar de rmanrman
          Participante

            @Itimura

            O relatório necessariamente precisa estar neste formato ? Digo vendedores em linha e dias em colunas ? Pergunta isso porque os dados não estão armazenados desta forma. É mais fácil listar o vendedor e embaixo todas as datas que tem pedido.

            Como você pretende emitir esse relatório ? Você possui algum ferramenta de relatório, como Cristal Report ou iReport. Ou a ideia era formatar pelo sqlplus e imprimir ? 😯 Esse relatório será integrado com um sistema ?

            #103136
            Avatar de ItimuraItimura
            Participante

              [quote=”rman”:2jaztaxs]@Itimura

              O relatório necessariamente precisa estar neste formato ? Digo vendedores em linha e dias em colunas ? Pergunta isso porque os dados não estão armazenados desta forma. É mais fácil listar o vendedor e embaixo todas as datas que tem pedido.

              Como você pretende emitir esse relatório ? Você possui algum ferramenta de relatório, como Cristal Report ou iReport. Ou a ideia era formatar pelo sqlplus e imprimir ? 😯 Esse relatório será integrado com um sistema ?[/quote]

              Olá Rman tudo bem?

              Primeiramente muito grato pela leitura do post

              Os dados estão na mesma tabela, e necessário que sejam apresentados desta forma ou semelhante

              O Gerente de vendas quer analisar entrando com uma data inicial e uma final — Isto será feito por uma rotina no meu sistema que permite criar uma query com dados de entrada representados por 😀 ATA_INICIAL e 😀 ATA_FINAL

              ao gerar essa query me transportará os dados em Grid para exportar ao Excell ou PDF

              O relatório deve vir com as datas em colunas com o ultimo horario recebido

              Na tabela TB_PEDIDOS tenho um campo para data e outro campo para Hora

              O campo data esta no formato DATE

              O campo Hora esta no formato Numerico(2)

              Agradecido pela sua leitura

              #103137
              Avatar de rmanrman
              Participante

                @Itimura

                O grande problema de colocar os dias em colunas é que o relatório terá limitações, ou será manco. Digo isso na hora de imprimir o relatório. E outra, se for realmente colocar os dias em colunas, você terá que fazer um sql dinamico, porque dependendo do filtro das datas que você saberá quantas colunas terá o relatório.

                É muito mais fácil trabalhar com o agrupamento de uma ferramenta de relatório, fazendo a quebra por vendedor. O seu sistema é em que linguagem ?

                #103138
                Avatar de ItimuraItimura
                Participante

                  se invertemos os parametros?

                  os vendedores em colunas e os dias em linhas? adianta algo?

                  o programa é desenvolvido em delph pela PC Sistemas em GO

                  puxa…

                  tava confiante que conseguiria ao menos uma idéia preliminar para dar continuidade

                  mas obrigado

                  #103139
                  Avatar de rmanrman
                  Participante

                    @Itimura

                    Posta um DESC das tabelas envolvidas e exemplos de registro de cada tabela, e como deve ficar…

                    #103141
                    Avatar de ItimuraItimura
                    Participante

                      [quote=”rman”:l7jwnfh9]@Itimura

                      Posta um DESC das tabelas envolvidas e exemplos de registro de cada tabela, e como deve ficar…[/quote]

                      A tabela é enorme mas as principais colunas dela são


                      COLUMN TYPE
                      NUMPEP NUMBER(10)
                      DATA DATE
                      CODCLI NUMBER(6)
                      VENDEDOR NUMBER(4)
                      DTENTREGA DATE
                      CODFILIAL VARCHAR2(2)
                      VLDESCONTO NUMBER(16,3)
                      HORA NUMBER(2)
                      MINUTO NUMBER(2)

                      O esquema deve sair assim:

                      FILTRO DE 01/03/2012 ATÉ 03/03/2012
                      --colunas
                      VENDEDOR 01/03/2012 02/03/2012 03/03/2012
                      --linhas
                      cod_VEND1 12 16 15
                      cod_VEND2 11 18 22
                      cod_VEND3 09 13 17
                      cod_VEND4 22 14 19

                      os dados geram assim com um select simples

                      NUMPED DATA CODCLI VENDEDOR DATA CODFILIAL HORA MINUTO

                      380062 13/09/2006 2010 38 15/09/2006 1 17 59
                      102058 13/09/2006 14271 100 15/09/2006 1 18 4
                      107093 14/09/2006 9342 107 18/09/2006 1 17 33
                      107094 14/09/2006 10993 107 18/09/2006 1 17 33
                      940045 14/09/2006 9774 94 18/09/2006 1 17 45
                      430083 14/09/2006 10596 43 18/09/2006 1 17 53

                      veja se clareia para uma ajuda

                      #103151
                      Avatar photoRegis Araujo
                      Participante

                        @Itimura

                        Bom dia..

                        Cara.. de uma pesquisada por PIVOT, creio que isto irá lhe ajudar.. é justamente o que vc quer fazer.. transformar colunas em linhas e linhas em colunas..!!

                        Eh bem complexo mas dando uma estudada você irá conseguir usar esta funcionalidade…!!!

                        Abraços..!

                        #103154
                        Avatar de ItimuraItimura
                        Participante

                          [quote=”Thunder_Catz”:xsf8fva8]@Itimura

                          Bom dia..

                          Cara.. de uma pesquisada por PIVOT, creio que isto irá lhe ajudar.. é justamente o que vc quer fazer.. transformar colunas em linhas e linhas em colunas..!!

                          Eh bem complexo mas dando uma estudada você irá conseguir usar esta funcionalidade…!!!

                          Abraços..![/quote]

                          Grande Thunder_catz!

                          tudo bem?

                          sempre grato pela sua ajuda,

                          vou ja procurar sobre o assunto, vai ser legal pois eu nunca ouvi aomenos falar sobre este assunto, e buscarei sobre o assunto

                          #103157
                          Avatar photoRegis Araujo
                          Participante

                            @Itimura

                            Grande Itimura.. heheh..

                            Opa..Estamos sempre disposto em ajudar..

                            Cara.. da uma lida neste doc.. acho q atende muito bem a sua necessidade alem de ser bem explicado…

                            http://www.oracle-developer.net/display.php?id=506

                            Abraços..!

                            #103161
                            Avatar de ItimuraItimura
                            Participante

                              [quote=”Thunder_Catz”:37n2hfw8]@Itimura

                              Grande Itimura.. heheh..

                              Opa..Estamos sempre disposto em ajudar..

                              Cara.. da uma lida neste doc.. acho q atende muito bem a sua necessidade alem de ser bem explicado…

                              http://www.oracle-developer.net/display.php?id=506

                              Abraços..![/quote]

                              Lindo isso heem!

                              eu achei este: http://www.rstoever.com/2008/06/02/pivo … m-colunas/

                              mas o seu ta mais completo,

                              mais uma vez obrigado

                              #103170
                              Avatar de rmanrman
                              Participante

                                @Thunder_Catz

                                Interessante o PIVOT. Eu já estava pensando em fazer SELECT com SUBSELECT e SQL DINAMICO. 😯

                                #103181
                                Avatar de ItimuraItimura
                                Participante

                                  [quote=”Thunder_Catz”:10x3sxfb]@Itimura

                                  Grande Itimura.. heheh..

                                  Opa..Estamos sempre disposto em ajudar..

                                  Cara.. da uma lida neste doc.. acho q atende muito bem a sua necessidade alem de ser bem explicado…

                                  http://www.oracle-developer.net/display.php?id=506

                                  Abraços..![/quote]

                                  Thunder….

                                  Meu banco é o 10g…. funciona para ele?!

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