Ajuda com MYSQL

6 respostas
leandrosu

Boa tarde Galera,

To com um problema com uma consulta no MYSQL,

Atualmente faço uma consulta numa tabela que chama mer_agenda.

Segue o codigo:

SELECT * FROM mer_agenda WHERE nome REGEXP 'leandro';

Quando rodo esse código ele me devolve todos os contatos que possuem LEANDRO no nome.

Ex:

Até ai tudo bem.
Mas agora vem o problema.
Se eu pesquisar: leandro uehara

SELECT * FROM mer_agenda WHERE nome REGEXP 'leandro uehara';

Ele nao me retorna nada pois faltou o STOLFO no meio do LEANDRO UEHARA

Como posso resolver isso ?

[]s
Mas

6 Respostas

vinnysoft

Tenta:

SELECT * FROM mer_agenda WHERE nome LIKE 'leandro%';

Até +!

leandrosu

Valeu vinnysoft,

O teu código funciona sim mas apenas se digitar “leandro”, ai fica como a primeira consulta que mandei.

O problema é realmente quando eu pesquiso “leandro uehara” ele nao retorna nada.

Tem alguma outra ideia ?

vinnysoft

tenta entao colocando % antes tambem:

SELECT * FROM mer_agenda WHERE nome LIKE '%leandro%' OR nome LIKE '%uehara%';

Até +!

leandrosu

vinnysoft opa melhorou.
Mas ai retornaram varios registros nada a ver.

Tentei fazer o seguinte:

SELECT * FROM mer_agenda WHERE nome REGEXP 'leandro' AND nome REGEXP 'uehara'

mas ai o problema é que vou ter que tratar a String. sera que ha alguma forma de fazer direto no mysql ?

renato.marquez

Tenta assim:

SELECT * FROM mer_agenda WHERE nome LIKE '%leandro%uehara%'

Ou assim:

SELECT * FROM mer_agenda WHERE nome LIKE 'leandro%uehara'

Se não der, dê uma olhada mais profunda no uso de expressão regular do MySQL.

vinnysoft

Acho que a resposta do colega renato deve funcionar!

Até +!

Criado 20 de março de 2011
Ultima resposta 20 de mar. de 2011
Respostas 6
Participantes 3