ajuda nesse Select
Pessoal,
é o seguinte..
Tenho um select que retorna cdproduto de 1 a 10 por exemplo
e tenho outro select q retorna de 1 a 7
No caso,
queria descobrir quem sao os 3 registros do select 1 q não estao no select 2.
queria ter o retorno cdproduto (8,9,10)
Acho que deu pra entender.. né?
tentei assim mas nao deu.
select cdproduto from compra where cdcompra = 2 and cdproduto
except (select cdproduto from compra where cdcompra = 2 and sativo=´S´)
tentei tbm
e tbm nao deu.
select cdproduto from compra where cdcompra = 2 and cdproduto
not exists (select cdproduto from compra where cdcompra = 2 and sativo=´S´)
alguem sabe como eu faco pra retornar certo a informação???
Alguem pode me ajudar?
obrigado..!!!
é o seguinte..
Tenho um select que retorna cdproduto de 1 a 10 por exemplo
e tenho outro select q retorna de 1 a 7
No caso,
queria descobrir quem sao os 3 registros do select 1 q não estao no select 2.
queria ter o retorno cdproduto (8,9,10)
Acho que deu pra entender.. né?
tentei assim mas nao deu.
select cdproduto from compra where cdcompra = 2 and cdproduto
except (select cdproduto from compra where cdcompra = 2 and sativo=´S´)
tentei tbm
e tbm nao deu.
select cdproduto from compra where cdcompra = 2 and cdproduto
not exists (select cdproduto from compra where cdcompra = 2 and sativo=´S´)
alguem sabe como eu faco pra retornar certo a informação???
Alguem pode me ajudar?
obrigado..!!!
Davefloripa
Curtidas 0
Respostas
Signori
02/03/2008
opa..
nao sei se entendi muito bem mas vai uma sugestao:
select cdproduto from compra where cdcompra = 2 and
cdproduto <> (select cdproduto from compra where cdcompra = 2 and sativo=´S´)
nesse caso vc traria os produtos da compra 2, somente os q o campo sativo = ´N´.
nao sei se e isso q vc quer, mas testa ai e volta a postar qler coisa :wink:
nao sei se entendi muito bem mas vai uma sugestao:
select cdproduto from compra where cdcompra = 2 and
cdproduto <> (select cdproduto from compra where cdcompra = 2 and sativo=´S´)
nesse caso vc traria os produtos da compra 2, somente os q o campo sativo = ´N´.
nao sei se e isso q vc quer, mas testa ai e volta a postar qler coisa :wink:
GOSTEI 0
Emerson Nascimento
02/03/2008
select cdproduto from compra
where cdcompra = 2 and not cdproduto in
(select cdproduto from compra where cdcompra = 2 and sativo=´S´)
where cdcompra = 2 and not cdproduto in
(select cdproduto from compra where cdcompra = 2 and sativo=´S´)
GOSTEI 0
Wanderok
02/03/2008
amigos,
Os dois SELECTS estao sendo aplicados sobre a mesma tabela.
Isto só faz sentido para TABELAS DIFERENTES.
No caso apontado, sendo a mesma tabela, basta a sintaxe abaixo:
select cdproduto from compra
where cdcompra = 2 and cdproduto and sativo<>´S´
Os dois SELECTS estao sendo aplicados sobre a mesma tabela.
Isto só faz sentido para TABELAS DIFERENTES.
No caso apontado, sendo a mesma tabela, basta a sintaxe abaixo:
select cdproduto from compra
where cdcompra = 2 and cdproduto and sativo<>´S´
GOSTEI 0
Wanderok
02/03/2008
Corrigindo:
select cdproduto from compra
where cdcompra = 2 and sativo<>´S´
select cdproduto from compra
where cdcompra = 2 and sativo<>´S´
GOSTEI 0
Edu2099
02/03/2008
Caso vc precise saber q a 1a query te traz 10 registros e a 2a traz 7 registros e só então separar os diferentes da 1a query, talvez a query abaixo possa te ajudar, mas se for um select simples, o q o wanderok passou já serve.
Aqui uma query que seleciona 2 visões diferentes da mesma tabela e traz os casos que as diferenciam:
Abraço!
Aqui uma query que seleciona 2 visões diferentes da mesma tabela e traz os casos que as diferenciam:
create table #compra (cdcompra int, cdproduto int, sativo char(1)) insert into compra select 2, 1, ´S´ insert into compra select 2, 2, ´S´ insert into compra select 2, 3, ´S´ insert into compra select 2, 4, ´S´ insert into compra select 2, 5, ´S´ insert into compra select 2, 6, ´S´ insert into compra select 2, 7, ´S´ insert into compra select 2, 8, ´N´ insert into compra select 2, 9, ´N´ insert into compra select 2, 10, ´N´ select a.cdproduto from compra a left join compra b on a.cdcompra =b.cdcompra and a.cdproduto=b.cdproduto and b.sativo=´S´ where a.cdcompra = 2 and b.cdproduto is null
Abraço!
GOSTEI 0