Like e Not Like

Dúvidas, dicas e truques de SQL, Select, Update, Delete, cláusulas, operações com joins, Funções em SQLs, etc
clfort09
Rank: Estagiário Pleno
Rank: Estagiário Pleno
Mensagens: 6
Registrado em: Qua, 09 Dez 2009 9:56 am
Localização: Fortaleza - CE
Carlos Francisco

Olá Pessoal,

Estou com uma dúvida que acho que é coisa simples:

tenho uma tabela com uma coluna vachar2 que contém alguns nomes

quando faço um select usando o not like e o like tem um resultado que eu achei estranho:

TABELA

Selecionar tudo

NOME:
ABC 123
123ABC3333
AAAA ABC AAAAA
UNIVERSIDADE ABC
COOPERATIVA ABC

Selecionar tudo

SELECT * FROM TABELA WHERE NOME LIKE '%ABC%'
AND NOME NOT LIKE '%UNIVERSIDADE%'
AND NOME NOT LIKE '%COOPERA%';
Resultado :

Selecionar tudo

ABC 123
123ABC3333
AAAA ABC AAAAA
UNIVERSIDADE ABC
COOPERATIVA ABC
A 'UNIVERSIDADE' e COOPERATIVA não era para ficar de fora??


Obrigado!
Avatar do usuário
dr_gori
Moderador
Moderador
Mensagens: 5024
Registrado em: Seg, 03 Mai 2004 3:08 pm
Localização: Portland, OR USA
Contato:
Thomas F. G

Você já respondeu a dúvida de alguém hoje?
https://glufke.net/oracle/search.php?search_id=unanswered

Ué, mas ficou de fora sim! Veja:

Selecionar tudo

SQL> create table tabela (NOME varchar2(50));

Table created.

SQL> begin
  2  insert into tabela values ('AAAA ABC AAAAA');
  3  insert into tabela values ('UNIVERSIDADE ABC');
  4  insert into tabela values ('COOPERATIVA ABC');
  5  insert into tabela values ('123ABC3333');
  6  insert into tabela values ('ABC 123');
  7  end;
  8  /

PL/SQL procedure successfully completed.

SQL> select * from tabela;

NOME
--------------------------------------------------
AAAA ABC AAAAA
UNIVERSIDADE ABC
COOPERATIVA ABC
123ABC3333
ABC 123

SQL> SELECT * FROM TABELA WHERE NOME LIKE '%ABC%'
  2  AND NOME NOT LIKE '%UNIVERSIDADE%'
  3  AND NOME NOT LIKE '%COOPERA%';

NOME
--------------------------------------------------
AAAA ABC AAAAA
123ABC3333
ABC 123

SQL> 
Parece que funcionou sim.
Editado pela última vez por dr_gori em Ter, 05 Jan 2010 12:08 pm, em um total de 1 vez.
victorhugomuniz
Moderador
Moderador
Mensagens: 1396
Registrado em: Sex, 01 Fev 2008 2:06 pm
Localização: Rio de Janeiro - RJ
Contato:
:D

você poderia postar seu exemplo real???

penso que a sua maneira esta certa e não entendi a sugestao do dr_gori

:?:
clfort09
Rank: Estagiário Pleno
Rank: Estagiário Pleno
Mensagens: 6
Registrado em: Qua, 09 Dez 2009 9:56 am
Localização: Fortaleza - CE
Carlos Francisco

Deu certo :)

Obrigado!
clfort09
Rank: Estagiário Pleno
Rank: Estagiário Pleno
Mensagens: 6
Registrado em: Qua, 09 Dez 2009 9:56 am
Localização: Fortaleza - CE
Carlos Francisco

Quando usei o select usando os parenteses deu certo. (Sugestão anterior)


Vou refazer, devo ter feito cometido alguma besteira.
Responder
  • Informação
  • Quem está online

    Usuários navegando neste fórum: Nenhum usuário registrado e 2 visitantes