PostgreSQL
 sql >> Teknologi Basis Data >  >> RDS >> PostgreSQL

Fuzzy mencocokkan string dalam SQL

Di postgres Anda dapat menggunakan fuzzystrmatch kemasan. Ini memberikan levenshtein fungsi, yang mengembalikan jarak antara dua teks, Anda kemudian dapat melakukan pencocokan fuzzy dengan predikat teladan berikut:

where levenshtein(street_address, '123 Main Avex') <= 1

Ini akan cocok dengan semua catatan, karena jarak antara '123 Main Ave' dan '123 Main Avex' adalah 1 (1 penyisipan).

Tentu saja, nilai 1 di sini hanyalah sebuah contoh dan akan melakukan pencocokan dengan cukup ketat (perbedaan hanya dengan satu karakter). Anda sebaiknya menggunakan angka yang lebih besar atau, yang disarankan oleh @IVO GELOV - gunakan jarak relatif (jarak dibagi panjang).



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Skrip Bash untuk menginstal PostgreSQL - Tidak berfungsi

  2. Menambahkan kolom sebagai kunci asing memberikan kolom KESALAHAN yang direferensikan dalam batasan kunci asing tidak ada

  3. org.postgresql.util.PSQLException:FATAL:tidak ada entri pg_hba.conf untuk host

  4. PostgreSQL:Buat tabel jika tidak ada AS

  5. Spark SQL 2.0:NullPointerException dengan kueri PostgreSQL yang valid