Oracle
 sql >> Base de Dados >  >> RDS >> Oracle

Pesquise palavras semelhantes usando um índice


Talvez UTL_MATCH pode ajudar.

Mas você também pode criar um índice baseado em função, digamos, algo assim:
regexp_replace(your_column, '[^0-9a-zA-Z]+', ' ')

E tente combinar assim:
...
WHERE regexp_replace(your_column, '[^0-9a-zA-Z]+', ' ') = 
      regexp_replace('maria (cool)' , '[^0-9a-zA-Z]+', ' ')

Aqui está uma demonstração do sqlfiddle Não está completo, mas pode ser um começo