Valeu Caras! Funcionou Perfeitamente bem! Era isso mesmo que eu queria.
Tanto a implementação do Tiago quanto a sugestão do Dickson retornam os
mesmos dados e a mesma estrutura pretendida por mim. Muito obrigado mesmo!!!


Em 3 de junho de 2013 21:03, Tiago Adami <[email protected]> escreveu:

> Em 3 de junho de 2013 20:38, Ramiro Pamponet <[email protected]> escreveu:
> >
> > Boa Noite Pessoal,
> >
> > Estou querendo montar um relatório no iReport para uma aplicação Java
> que desenvolvi para capturar a quantidade de receitas do SUS, Particulares
> e Total por dia, da farmácia onde trabalho. Atualmente minha aplicação
> apresenta o resultado da consulta ao BD em um jTextArea, de forma
>  individual, ou seja, uma query para as Receitas SUS, outra as Receitas
> Particulares e uma terceira para o Total de Receitas. O que eu estou
> querendo fazer agora é montar um único relatório, em forma de tabela,
> contendo os campos DATA ; SUS ; PARTICULAR ; TOTAL. Atualmente utilizo o
> modelo de query abaixo descriminado, onde as linhas precedidas por "--" são
> as variantes da query. Existe alguma maneira de juntar todas as consultas
> em um único resultado, sabendo que a coluna "flg_receita" no BD recebe o
> valor CHAR "1" para receitas SUS e "2" para receitas Particulares. Utilizo
> o "distinct" para não repetir as datas e o "count" para contar as linhas
> contendo as regras definidas na cláusula "where" para o tipo de receita.
> >
> > QUERY:
> >
> > select distinct(dat_emissao) as Data,
> > -- count(flg_receita) as SUS,
> > -- count(flg_receita) as Particular,
> > -- count(flg_receita) as Total
> > from cadcvend where
> > -- flg_receita='1' -- SUS
> > -- flg_receita='2' -- Particular
> > -- flg_receita is not null -- Total
> > and
> > flg_excluido is null -- Eliminar Vendas Excluídas
> > -- and dat_emissao between data_ini ('yyyy-MM-dd') and data_fim
> ('yyyy-MM-dd')
> > group by dat_emissao
> > order by dat_emissao
> >
>
> Não testei, mas tenta esse aí:
>
> select dat_emissao as Data,
> SUM(CASE WHEN flg_receita='1' THEN 1 ELSE 0 END) as SUS,
> SUM(CASE WHEN flg_receita='2' THEN 1 ELSE 0 END) as PARTICULAR,
> count(flg_receita) as Total
> from cadcvend where flg_receita is not null
> and flg_excluido is null
> and dat_emissao between data_ini ('yyyy-MM-dd') and data_fim ('yyyy-MM-dd')
> group by dat_emissao
> order by dat_emissao
>
> --
> TIAGO J. ADAMI
> http://www.adamiworks.com
> @tiadami
> _______________________________________________
> pgbr-geral mailing list
> [email protected]
> https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
>
_______________________________________________
pgbr-geral mailing list
[email protected]
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral

Responder a