[firebase-br] SQL novamente!!!
Eduardo Jedliczka
jedyfb em gmail.com
Sex Maio 8 15:51:59 -03 2009
Desta forma não...
mas dá para fazer algo mais ou menos assim:
select id_vendedor,nome,sum(liquido) total_vendido,sum(valor_comissao)
total_comissao
from
(select
id_nf,
id_produto,
valor_liq,
ipi_valor,
valor_liq-ipi_valor liquido,
id_vendedor,
d.comissao,
case
when d.comissao='A' then c.comissaoA
when d.comissao='B' then c.comissaoB
when d.comissao='C' then c.comissaoC
when d.comissao='D' then c.comissaoD
when d.comissao='E' then c.comissaoE
when d.comissao='F' then c.comissaoF
else 0
end perc_comissao,
0.00 valor_comissao
from nfprodutos a
left join nfmestre b on b.id = a.id_nf
left join vendedores c on c.id = b.id_vendedor
left join produtosprincipal d on d.id = a.id_produto
where b.geracao_data between '[dataini]' and '[datafim]'
) a
left join vendedores b on b.id = a.id_vendedor
group by id_vendedor
order by nome
Abraço
Eduardo
Em Sex, 2009-05-08 às 15:44 -0300, luis em bmsoft.com.br escreveu:
> Pessoal,
>
> No DBisam tinha uma query para fazer um relatrio assim:
>
> ******** INICIO *********
> select
> id_nf,
> id_produto,
> valor_liq,
> ipi_valor,
> valor_liq-ipi_valor liquido,
> id_vendedor,
> d.comissao,
>
> case
> when d.comissao='A' then c.comissaoA
> when d.comissao='B' then c.comissaoB
> when d.comissao='C' then c.comissaoC
> when d.comissao='D' then c.comissaoD
> when d.comissao='E' then c.comissaoE
> when d.comissao='F' then c.comissaoF
> else 0
> end perc_comissao,
> 0.00 valor_comissao
>
> into "memory\t1"
> from nfprodutos a
> left join nfmestre b on b.id = a.id_nf
> left join vendedores c on c.id = b.id_vendedor
> left join produtosprincipal d on d.id = a.id_produto
> where b.geracao_data between '[dataini]' and '[datafim]'
> ;
> update "memory\t1" set valor_comissao = liquido * (perc_comissao/100)
> ;
>
> select id_vendedor,nome,sum(liquido) total_vendido,sum(valor_comissao)
> total_comissao
> from "memory\t1" a
> left join vendedores b on b.id = a.id_vendedor
> group by id_vendedor
> order by nome
> ********* FIM ***********
>
> ISSO D PRA FAZER NO FIREBIRD??
>
>
> ______________________________________________
> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
> Para saber como gerenciar/excluir seu cadastro na lista, use: http://www.firebase.com.br/fb/artigo.php?id=1107
> Para consultar mensagens antigas: http://firebase.com.br/pesquisa
Mais detalhes sobre a lista de discussão lista