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
Question
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 to comment
Share on other sites
7 answers to this question
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.