[firebase-br] utilizando a in para seleção de valores

Ricardo Gimenez rmgimenez em gmail.com
Ter Ago 12 15:37:52 -03 2008


Cara, não sei em qual linguagem vc programa, mas eu resolveria esse 
problema na hora de montar o select e enviar para o banco.
Não tenho outra idéia para resolver esse problema a não ser via 
programação mesmo, na hora de montar o select.

Cássio wrote:
> Cara, blza..
> assim já tinha feito.
> o problema é que a seleção que vai no in é dinamica, ou seja, nunca vou 
> saber quantas vão vir.
> ai é complicado de montar isso...
>
> O ideal serial se o IN fizesse a lógia do AND e não do OR.
>
> vlw.
>
>
> Ricardo Gimenez escreveu:
>   
>> select *
>> from peixe p
>> where exists (select * from Peixe_carac c where c.id_peixe = p.id_peixe 
>> and c.id_carac = 1)
>>   and exists (select * from Peixe_carac c where c.id_peixe = p.id_peixe 
>> and c.id_carac = 3)
>>   and exists (select * from Peixe_carac c where c.id_peixe = p.id_peixe 
>> and c.id_carac = 9)
>>
>> Tenta mais ou menos assim, mas ai tem que montar os and via programação 
>> mesmo, veja se dá certo.
>>
>> Ricardo Gimenez
>>
>>
>> Cássio wrote:
>>     
>>> Acho que não me fiz Claro.
>>>   Não é isso que to falando.
>>>
>>> assim:
>>> tenho duas tabelas por exemplo
>>>
>>> Peixe
>>> ID
>>> Descricao
>>>
>>> id descricao
>>> 1 peixe1
>>> 2 peixe2
>>>
>>> Peixe_Carac
>>> id_Carac
>>> ID_Peixe
>>>
>>> id_carac  ID_Peixe
>>> 1                 1
>>> 2                 1
>>> 3                 1
>>> 7                 1
>>>
>>>
>>> quero selecionar os peixes com determinadas caracteristicas... ou seja, 
>>> com o conjunto de caracs.
>>>
>>> então estava fazendo um join e colocando na clausala where id_carac in (1,3)
>>> retorna blza.
>>>
>>> ai faço (1,3,9) retorna também. Como faço pra fazer valer o conjunto da 
>>> clausula in e não registro a registro? ou seja, só vai pegar 1,3,9 se 
>>> todos existirem na tabela.
>>>
>>> Obrigado desde já.
>>>
>>>
>>> Janderson Almeida escreveu:
>>>   
>>>       
>>>> Um campo não pode ter dois valores.
>>>>
>>>> Ex: o campo com valor 01, tem o valor 01.
>>>> Ele não tem o valor 01 e 04 ao mesmo tempo.
>>>>
>>>> O valor pode ser >= 0 end <= 04.
>>>> mais não == 01 end == 04.
>>>>
>>>> Abraço.
>>>>
>>>> Janderson Almeida.
>>>> ______________________________________________
>>>> 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
>>>>
>>>>     
>>>>         
>>> ______________________________________________
>>> 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
>>>
>>>   
>>>       
>> ______________________________________________
>> 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
>>
>>     
>
>
> ______________________________________________
> 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