Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

litte jowel

Colsulta firebird

Recommended Posts

tenho uma Tabela PEDIDOS outra FORNECEDOR

em pedidos tenho os campos: ID_PEDIDO, ID_CLIENTE, ID_FORNECEDOR, VALOR, ID_TIPO_PEDIDO ("id_tipo_pedido" é "venda ou devolução" e PED_ORIGEM que é o n° do pedido origem da devolução.

 

valores nas tabelas: PEDIDO

 

ID_PEDIDO| ID_CLIENTE| ID_FORNECEDOR| VALOR | ID_TIPO_PEDIDO| PED_ORIGEM
1------- | 10--------| 2------------| 100.00| VENDA---------|     
2------- | 10--------| 2------------| 200.00| VENDA---------|     
3------- | 10--------| 2------------| 100.00| DEVOLUÇÃO-----| 1
4------- | 20--------| 2------------| 100.00| VENDA---------|       
5------- | 20--------| 2------------| 100.00| DEVOLUÇÃO-----| 4

 

Como faria uma consulta para retornar os valores como mostra a seguir: SOMENTE VENDAS:

 

ID_FORNECEDOR, N°_DE_CLIENTES, SOMA_VALOR, N°_DE_PEDIDOS

2, 1, 200.00, 1

 

 

??????????????

deu pra entender?

aguardo e agradeço.

Compartilhar este post


Link para o post
Compartilhar em outros sites

No select coloque uma condição WHERE

 

WHERE ID_TIPO_PEDIDO = 'VENDA'

Compartilhar este post


Link para o post
Compartilhar em outros sites

Tente usar o CASE, algo como

 

select id_pedido,sum((case when id_pedido = 'venda' then 1 else -1 end) * valor)
from tabela
group by id_pedido

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.