Re: [oracle_br] Re: Agrupar linhas
Tem várias opções, a melhor seria com PIVOT realmente. Mas é possível fazer assim também: SELECT A.DATA, SUM(B.VALOR) FILIAL1 ,SUM(C.VALOR) FILIAL2 ,SUM(D.VALOR) FILIAL3 FROM TABELA A LEFT JOIN TABELA B ON A.DATA = B.DATA AND B.FILIAL = 1 LEFT JOIN TABELA C ON A.DATA = C.DATA AND C.FILIAL = 2 LEFT JOIN TABELA D ON A.DATA = D.DATA AND D.FILIAL = 3 GROUP BY DATA Em 7 de novembro de 2014 13:37, Fabiano Picolotto fabiano...@gmail.com [oracle_br] escreveu: > > > Bom tarde Mario, blz? > > Teria como passar o SQL completo, este exemplo não esta representando > exatamente o resultado que você mostrou. > > Sua data esta gravando a hora ou não? > > > Att. > > Fabiano Picolotto > > > > > > Em 7 de novembro de 2014 12:56, rafael.p.fe...@gmail.com [oracle_br] < > oracle_br@yahoogrupos.com.br> escreveu: > >> >> >> Olá Mario, >> >> Embora seja mais novo na área, eu pensei aqui em algo como a instrução >> HAVING BY quando você usa o GROUP BY em SELECT quando utiliza calculos de >> soma, média, minimo e máximo. >> >> Tenta colocar um HAVING e depois nos diga se ajudou. >> >> Abraço. >> Felix >> > > > > -- > Fabiano P. > Fone: (46) 9113-6731 > E-Mail: fabiano...@gmail.com > Skype: fabianofpb > > >
Re: [oracle_br] Re: Agrupar linhas
Bom tarde Mario, blz? Teria como passar o SQL completo, este exemplo não esta representando exatamente o resultado que você mostrou. Sua data esta gravando a hora ou não? Att. Fabiano Picolotto Em 7 de novembro de 2014 12:56, rafael.p.fe...@gmail.com [oracle_br] < oracle_br@yahoogrupos.com.br> escreveu: > > > Olá Mario, > > Embora seja mais novo na área, eu pensei aqui em algo como a instrução > HAVING BY quando você usa o GROUP BY em SELECT quando utiliza calculos de > soma, média, minimo e máximo. > > Tenta colocar um HAVING e depois nos diga se ajudou. > > Abraço. > Felix > > -- Fabiano P. Fone: (46) 9113-6731 E-Mail: fabiano...@gmail.com Skype: fabianofpb
Re: [oracle_br] Re: Agrupar linhas
Rafael, Não cara não funcionou ate consegui algo usando o PIVOT, porem só consegui separadamente SELECT * FROM ( select dq_d.VALOR AS VALOR1, dq_d.FILIAL AS FILIAL1, TRUNC(dq_d.data) as data from tabela dq_d where dq_d.status = 'P' AND TRUNC(dq_d.data) = '02/01/2014' and dq_d.cheque is null ) PIVOT (SUM(VALOR2) AS DINHEIRO FOR (FILIAL1) IN ('1' as CN,'2' as DQ,'3' as AM)); eu precisava desse mesmo select ai porem onde esta dq_d.cheque is null ficaria NOT NULL ... dai o PIVOT ficaria PIVOT (SUM(VALOR2) AS CHEQUE FOR (FILIAL2) IN ('1' as CN,'2' as DQ,'3' as AM) tem como?? Em 7 de novembro de 2014 11:56, rafael.p.fe...@gmail.com [oracle_br] < oracle_br@yahoogrupos.com.br> escreveu: > > > Olá Mario, > > Embora seja mais novo na área, eu pensei aqui em algo como a instrução > HAVING BY quando você usa o GROUP BY em SELECT quando utiliza calculos de > soma, média, minimo e máximo. > > Tenta colocar um HAVING e depois nos diga se ajudou. > > Abraço. > Felix > >