Se eu entendi, vê se esse select ajuda:

 

SELECT TPV.NUMERO_DO_PEDIDO FROM TPEDIDO_VENDAS TPV

WHERE TPV.NUMERO_DO_PEDIDO = (SELECT TPIV.ID_TPEDIDO_VENDAS 

 
FROM  TITENS_PEDIDO_VENDA TIPV

 
WHERE TPV.COR_DO_ITEM = ‘VERMELHO’)

AND TPV.COR_DO_ITEM = ‘AZUL’;

 

De: oracle_br@yahoogrupos.com.br [mailto:oracle_br@yahoogrupos.com.br] Em
nome de Junior
Enviada em: Wednesday, 22 de August de 2012 14:12
Para: oracle_br@yahoogrupos.com.br
Assunto: [oracle_br] Essa é dificirrrr!!!Como fazer consulta com filtros
diferentes para o mesmo campo?

 

  

Um Exemplo:

/*TABELA TPEDIDO_VENDAS:
*/
*ID*
*NUMERO_DO_**PEDIDO
*
1
1
2
2
3
3
4
4
5
5

/*TABELA TITENS_PEDIDO_VENDA:
*/
*ID
* *ID_TPEDIDO_VENDAS
* *ITEM
* *COR_DO_ITEM*
1
1
A
AZUL
2
1
B
VERMELHO
3
1
A
VERDE
4
2
A
VERMELHO
5
3
A
VERDE
6
3
A
VERMELHO
7
4
B
VERMELHO
8
4
A
AZUL
9
4
A
VERMELHO
10
5
A
AZUL

Agora que temos as tabelas, preciso selecionar nas duas tabelas os 
pedidos que tenham o item com cor azul e com cor vermelho, mas se tiver 
somente a cor azul ou se tiver somente a cor vermelho, não preciso 
selecioná-lo.
Como ficaria, então, a resposta da minha seleção, baseada nos dados acima:

*ID_PED_VDA
* *NUMERO_PED_VENDA* *ID_ITEM_PED_VDA
* *ITEM
* *COR_DO_ITEM*
1
1
1
A
AZUL
1
1
2
B
VERMELHO
4
4
7
B
VERMELHO
4
4
8
A
AZUL
4
4
9
A
VERMELHO

Explicando melhor, preciso selecionar pedidos de vendas que possuem 
itens com a cor azul e itens com a cor vermelho. Este campo cor é 
preenchido somente com uma cor, então, serão selecionados somente os 
pedidos que possuirem itens com a cor azul e também com a cor vermelho. 
Mas os pedidos que tenham itens com azul e não tenham itens com a cor 
vermelho, não quero trazer nesta seleção e também não quero trazer nesta 
seleção os pedidos que tenham a cor vermelho mas não tenham a cor azul, 
resumindo, terão que ter registros com a cor azul e também registros com 
a cor vermelha no mesmo pedido.

Obrigado a todos!

Luiz Junior
Depto-ti Jowanel
Oracle 10G

[As partes desta mensagem que não continham texto foram removidas]





[As partes desta mensagem que não continham texto foram removidas]

Responder a