[firebase-br] RES: Condição Contrária

Matheus Georg Mathias(Priori) desenvolvedor5 em priorize.com.br
Sex Abr 11 11:07:40 -03 2014


Se para um caso você utiliza o OR e sendo afirmação, para ter o retorno do
restante você deverá utilizar a condição AND e sendo negação.

SELECT * FROM CLIENTES WHERE ((NOME NOT LIKE '%DIEGO%') AND (APELIDO NOT
LIKE
'%MARIA%'))



-----Mensagem original-----
De: lista [mailto:lista-bounces em firebase.com.br] Em nome de Diego Bulgarelli
Enviada em: sexta-feira, 11 de abril de 2014 10:59
Para: FireBase
Assunto: Re: [firebase-br] Condição Contrária

Bom dia a todos

Não funcionou dessas fomas passadas.
Reparem que utilizam mais de um campo para as condições LIKE, e o problema
disso é que quando uso informações diferentes.
Ex: SELECT * FROM CLIENTES WHERE ((NOME LIKE '%DIEGO%') OR (APELIDO LIKE
'%MARIA%'))

Tenho 100 registros numa tabela
Quando faço a consulta retorna 25 registros.
Gostaria de em outra consulta me retornasse os demais 75 registros.

Posso usar o WHERE NOT IN (SELECT ....) mas gostaria de fazer isso num único
comando.
Estou querendo isso pois já tenho diversas rotinas padrão no sistema e um
usuário quer marcar uma opção para trazer tudo o que não foi trazido na
primeira. Por isso pensei em apenas adicionar um WHERE NOT (CODIÇÕES
EXISTENTES)

Acho que seria bem útil este tipo de comando no Firebrid.

Grato
Diego Bulgarelli




Em 11 de abril de 2014 10:32, Jéter Rabelo - GMail
<jeter.rabelo em gmail.com>escreveu:

> Bom dia.
>
> Inclua o NOT dentro dos parenteses:
>
> SELECT * FROM CLIENTES WHERE ((NOME NOT LIKE '%DIEGO%') OR (APELIDO 
> LIKE
> '%DIEGO%'))
>
> Atenciosamente.
>
> Jéter Rabelo Ferreira
>
>
>
> Jeter-Jerasoft
> ______________________
> Jéter Rabelo Ferreira
> <http://www.jerasoft.com.br>
>
> http://www.jerasoft.com.br
> Skype: jeter.rabelo
>
> Em 11/04/2014 10:23, Diego Bulgarelli escreveu:
>
>> Bom dia a todos,
>>
>> Tenho uma consulta com várias condições no Where.
>> Gostaria fazer outra consulta que me retornasse tudo que a primeira 
>> não trouxe, porém mantendo a mesma estrutura.
>>
>> Original
>> SELECT * FROM CLIENTES WHERE ((NOME LIKE '%DIEGO%') OR (APELIDO LIKE
>> '%DIEGO%'))
>>
>> Contrário
>> SELECT * FROM CLIENTES WHERE *NOT *((NOME LIKE '%DIEGO%') OR (APELIDO 
>> LIKE
>>
>> '%DIEGO%'))
>>
>> Mas assim não está trazendo todos os registros que ficaram faltando 
>> na primeira consulta.
>> Alguém tem alguma ideia?
>>
>> Grato
>> Diego Bulgarelli
>> ______________________________________________
>> 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