Oracle
 sql >> Database >  >> RDS >> Oracle

Ricerca di testo fuzzy Oracle

La corrispondenza dei nomi è difficile . L'indicizzazione del testo di Oracle supporta la corrispondenza fuzzy e lo stemming, il che è un inizio, ma considera questi nomi:

  • Nicholas Raleigh
  • Nihcolas Raleigh
  • Nico Raleigh
  • Nik Raleigh
  • Nicky Raleigh
  • Nick Raleigh
  • Nikolaus Raleigh
  • Nicola Raleigh
  • Nikki Raleigh
  • Nikola Raleigh
  • Nikolai Raleigh
  • Nikolaj Raleigh

Il tentativo di abbinare quelli attraverso le astrazioni, che si tratti di Levenshtein Distance o Double Metaphone, genererà falsi positivi e falsi negativi. Questa è la natura dell'astrazione. Il modo migliore per ottenere un set di risultati mirato e accurato è con un thesaurus (e anche questo non è perfetto). Sfortunatamente, assemblare un thesaurus completo dei nomi è un'impresa gigantesca; per avere un'idea del compito, controlla le statistiche sul sito NameX .

Aggiornamento:Oracle 11gR2 include un'estensione per Oracle Text su misura per la ricerca di nomi. Questo è molto pulito e sicuramente il primo punto di partenza. Scopri di più .