Jump to content
Fórum Script Brasil
  • 0

Busca Avançada


cyberalexxx

Question

Estou fazendo uma busca e queria que por exemplo se usuário procurasse por cão mais no campo de busca digitasse cao achasse da mesma forma, em DB access eu faço assim e funciona:

select * from tabela where texto like '%[c,ç][a,á,à,ã,â,ä,A][o,ó,ò,õ,ô,ö,O]%' order by cdigo

Alguém sabe como fazer isso no MySQL??

Link to comment
Share on other sites

8 answers to this question

Recommended Posts

  • 0

Existe uma função chamada soudex ele faz a pesquisa da seguinte

forma :


Comando Sql : Select * from CLIENTES where Soundex(NOME)=Soundex
("Fátima")


Resultados: Fátima ...
Fatima ...
fatma....
fhathima.....
etc ...

pode ser usada para cão , cao , kao , etc....

*/

Link to comment
Share on other sites

  • 0

/* sim o Soundex funciona como o like :

só que você no caso irá resgatar de uma variavel, exemplo :

Select * from CLIENTES where Soundex($variavel)=Soundex
("$variavel")

o que entrar ali ele pegará , não só cão _ são , são , etc...

*/

Link to comment
Share on other sites

  • 0
/* sim o Soundex funciona como o like :

só que você no caso irá resgatar de uma variavel, exemplo :

Select * from CLIENTES where Soundex($variavel)=Soundex
("$variavel")

o que entrar ali ele pegará , não só cão _ são , são , etc...

*/

Não sei se voce me entendeu, ou eu que não entendi, vamos a um exemplo:

variaveldebusca="cao"

Campo texto do BD="Hoje tive um dia de cão"

Se eu fizer assim:

Select * from tabela where Soundex(texto)=Sondex(variaveldebusca)

acho que ele não ira localizar pois existem mais coisas no campo alem da palavra cão, o que eu queria fazer é que ele localizasse a palavra em qualquer lugar do campo, algo do tipo (sei q não da certo só para você entender) Select * from tabela where Soundex(texto) like Soundex(%variaveldebusca%)

Link to comment
Share on other sites

  • 0

/* Vamos lá :


tabela1

cod  nome
---------------
1     cao
---------------
2     cão
---------------
3     jao 
----------------

form 
                                   __________________
digite a palavra a ser pesquisada  |______cao_______| ok

               |
               | 
               |__> <input type="text"  name="busca">
                                                     |
                                                     |
                             dispara ________________|
                            |
                            |__> Select *from tabela1
                                 where nome like '%$busca%'
                                                          |
                                                          |
                                                          |
                                                          |
                                            resulta_______| 
                                           |
                                           |
                                           |    
                                       cod  nome
                                  ---------------
                                       1     cao
                                  ---------------
                                       2     cão
                                  ---------------  

indiferente de acento ao não

*/

Link to comment
Share on other sites

Guest
This topic is now closed to further replies.


  • Forum Statistics

    • Total Topics
      152.2k
    • Total Posts
      651.8k
×
×
  • Create New...