In postgres kun je fuzzystrmatch . gebruiken pakket. Het bewijst een levenshtein
functie, die de afstand tussen twee teksten retourneert, kunt u vervolgens fuzzy matching uitvoeren met het volgende voorbeeldige predikaat:
where levenshtein(street_address, '123 Main Avex') <= 1
Dit komt overeen met alle records, omdat de afstand tussen '123 Main Ave' en '123 Main Avex' 1 (1 invoeging) is.
Natuurlijk, waarde 1
hier is slechts een voorbeeld en zal het matchen vrij strikt uitvoeren (verschil met slechts één teken). Je moet ofwel een groter getal gebruiken of, wat @IVO GELOV suggereert - gebruik de relatieve afstand (afstand gedeeld door de lengte).