[Resolvido] SELECT de 3 Tabelas Sem Relacionamento com SUM com RANGE de DATA
Galera, venho contribuindo com diversas dúvidas, mas hoje quem está com uma dúvida sou eu. Cenário - Gerar Dados para Relatório de Faturamento. Objetivo - Obter os valores totais das tabelas de Compra, Venda e Despesa agrupados por mês através de SUM dentro do "periodo" passado pela tela de consulta do relatório.
***Problema*** - Não existe um relacionamento entre as tabelas e eu preciso obter os resultados por ***1 (UM) único select*** pois a cada registro lido com os valores totalizados e agrupados por mês eu movimento para um array onde o resultado do array é movimentado para um*** Chart do Google*** que gera um ***gráfico***. ***Insumos:*** Tabela compra /monthly_2019_08/image.png.3e1336108de7c472adcad5fef251b3e1.png" /> **RESULTADO SEPARADO DA TABELA COMPRA** SELECT sum(vlr_pago), CASE extract(MONTH from dt_registro_compra) WHEN 1 THEN 'Janeiro' WHEN 2 THEN 'Fevereiro' WHEN 3 THEN 'Março' WHEN 4 THEN 'Abril' WHEN 5 THEN 'Maio' WHEN 6 THEN 'Junho' WHEN 7 THEN 'Julho' WHEN 8 THEN 'Agosto' WHEN 9 THEN 'Setembro' WHEN 10 THEN 'Outubro' WHEN 11 THEN 'Novembro' WHEN 12 THEN 'Dezembro' END AS mes FROM db_pescado_gelo.sqltb_compra WHERE dt_registro_compra between '2019-01-01' and '2019-12-31' group by mes order by dt_registro_compra asc RESULTADO: /monthly_2019_08/image.png.c80b1d7335dfa859efa36b5f089ae3e4.png" /> Tabela Venda /monthly_2019_08/image.png.9817a40bda85ebdb428f3f4d2ad8e5e0.png" /> **RESULTADO SEPARADO DA TABELA VENDA** SELECT sum(vlr_vale), CASE extract(MONTH from dt_registro_venda) WHEN 1 THEN 'Janeiro' WHEN 2 THEN 'Fevereiro' WHEN 3 THEN 'Março' WHEN 4 THEN 'Abril' WHEN 5 THEN 'Maio' WHEN 6 THEN 'Junho' WHEN 7 THEN 'Julho' WHEN 8 THEN 'Agosto' WHEN 9 THEN 'Setembro' WHEN 10 THEN 'Outubro' WHEN 11 THEN 'Novembro' WHEN 12 THEN 'Dezembro' END AS mes FROM db_pescado_gelo.sqltb_venda WHERE dt_registro_venda between '2019-01-01' and '2019-12-31' group by mes order by dt_registro_venda asc RESULTADO: /monthly_2019_08/image.png.25b96353685f8a3d6c8b765540c117e1.png" /> Tabela Despesa /monthly_2019_08/image.png.14722c9001a901ffe9e5cb75014dbbc4.png" /> Sei que devo colocar *dt_pagamento is not null* **RESULTADO SEPARADO DA TABELA DESPESA** SELECT sum(vlr_pago), CASE extract(MONTH from dt_pagamento) WHEN 1 THEN 'Janeiro' WHEN 2 THEN 'Fevereiro' WHEN 3 THEN 'Março' WHEN 4 THEN 'Abril' WHEN 5 THEN 'Maio' WHEN 6 THEN 'Junho' WHEN 7 THEN 'Julho' WHEN 8 THEN 'Agosto' WHEN 9 THEN 'Setembro' WHEN 10 THEN 'Outubro' WHEN 11 THEN 'Novembro' WHEN 12 THEN 'Dezembro' END AS mes FROM db_pescado_gelo.sqltb_despesa WHERE dt_pagamento between '2019-01-01' and '2019-12-31' AND dt_pagamento is not null group by mes order by dt_pagamento asc RESULTADO: /monthly_2019_08/image.png.e07ac8d362490946ac9859787e056705.png" /> O resultado que eu gostaria é algo parecido com isso: ***TABELA DE VENDA*** ***TABELA DE COMPRA*** ***TABELA DE DESPESA*** - - R$ 31.272,55 Julho - - Agosto R$ 3.796,53 R$ 20.687,20 Agosto R$ 3.796,53 Agosto Esse resultado eu "***preciso***" que seja através do retorno do um único ***SELECT,*** se alguém puder me ajudar, ficarei muito agradecido. Se puderem dar uma forã agradeço @Motta. @Omar~. @Maujor. @gabrielms Att. ***Felipe Coutinho***Discussão (7)
Carregando comentários...