Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

tatiana schyneider

Localizar masi de uma palavra numa frase

Recommended Posts

Pessoal,

 

Tenho um banco com tabelas(innodb),portanto nao tem como usar fulltext.

 

Diante disso, estou tentando criar uma consulta que me retorne o seguinte exemplo:

 

Se eu digitar a seguinte frase : Um lindo dentro do meu campo descricacao ele me retorne entre outros resultados:

 

Um dia lindo

Um fim de semana Lindo

 

Entao, a pesquisa vai me retornar as palavras que eu colocar na consulta. Tentei usar o %like% mas nao deu certo.

 

 

Voces tem alguma dica? :)

 

obrigada

Compartilhar este post


Link para o post
Compartilhar em outros sites

Dois like

 

SELECT TEXTO
FROM TABELA
WHERE (UPPER(TEXTO) LIKE '%UM%' AND UPPER(TEXTO) LIKE '%LINDO%')

 

Caso queira QUALQUER palavra troque o AND pelo OR.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Sendo uma consulta de usuário uma solução poderia ser "desmontar" a string de pesquisa do usuário nas palavras chave e montar uma SQL dinamicamente.

 

Tendo cuidado com o SQL injection !

Compartilhar este post


Link para o post
Compartilhar em outros sites

O usuário digita :

 

palavra numa frase

 

a aplicação separa :

 

palavra

numa

frase

 

faz um laço e monta o SQL :

 

SELECT TEXTO FROM TABELA WHERE (UPPER(TEXTO) LIKE '%PALAVRA%' AND UPPER(TEXTO) LIKE '%NUMA%' AND UPPER(TEXTO) LIKE '%FRASE%')

 

Aí executa o SQL montado.

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.