procura e exibe somente os registros que contem as palavras digitadas na busca.
A logica para contar quantas palavras digitadas eu já fiz. E já tinha feito a busca tambem, mas apos alguns teste percebi uns erros estranhos.
A busca fica da seguinte forma
Vamos supor que eu Busque por: word1 word2
Nesse caso queria que SOMENTE os registros que contivessem WORD1 E (AND) WORD2 fossem selecionados.
Fiz o select da seguinte forma procurando em varios campos:
select * from tabela where campo1 like "%WORD1%" or campo2 like "%WORD1%" or campo3 like "%WORD1%" or campo4 like "%WORD1%" AND campo1 like "%WORD2%" or campo2 like "%WORD2%" or campo3 like "%WORD2%" or campo4 like "%WORD2%" order by id_campo
O estranho é que se no campo de busca eu colocar WORD1 WORD2 ele mostra o registro MAS tambem mostra TODOS os outros que tem WORD2 em algum campo.
Se eu digitar WORD2 WORD1 na busca é mostrado o RESULTADO CORRETO!!!
Fiz a query no phpadm e aconteceu mesma coisa.
Resumindo, quero fazer uma busca selecionado que só pegue resultados que tenham as DUAS ou MAIS palavras doi registro. Como no google por exemplo, que você digita CALCINHA FURADA e aparece somente resultados que tenham somente essas duas palavras.
Lembrando, não quero o codigo, já tenho a sintaxe que faz a contagem de palavras... Queria mesmo era a sintaxe do select
Pergunta
rptl
Fiz uma rotina de pesquisa faz o seguinte:
procura e exibe somente os registros que contem as palavras digitadas na busca.
A logica para contar quantas palavras digitadas eu já fiz. E já tinha feito a busca tambem, mas apos alguns teste percebi uns erros estranhos.
A busca fica da seguinte forma
Vamos supor que eu Busque por: word1 word2
Nesse caso queria que SOMENTE os registros que contivessem WORD1 E (AND) WORD2 fossem selecionados.
Fiz o select da seguinte forma procurando em varios campos:
select * from tabela where campo1 like "%WORD1%" or campo2 like "%WORD1%" or campo3 like "%WORD1%" or campo4 like "%WORD1%" AND campo1 like "%WORD2%" or campo2 like "%WORD2%" or campo3 like "%WORD2%" or campo4 like "%WORD2%" order by id_campo
O estranho é que se no campo de busca eu colocar WORD1 WORD2 ele mostra o registro MAS tambem mostra TODOS os outros que tem WORD2 em algum campo.
Se eu digitar WORD2 WORD1 na busca é mostrado o RESULTADO CORRETO!!!
Fiz a query no phpadm e aconteceu mesma coisa.
Resumindo, quero fazer uma busca selecionado que só pegue resultados que tenham as DUAS ou MAIS palavras doi registro. Como no google por exemplo, que você digita CALCINHA FURADA e aparece somente resultados que tenham somente essas duas palavras.
Lembrando, não quero o codigo, já tenho a sintaxe que faz a contagem de palavras... Queria mesmo era a sintaxe do select
Link para o comentário
Compartilhar em outros sites
7 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.