General guidance: Levenshtein distance versus other similarity algorithms

From: Rachel Owsley <Rachel(dot)Owsley(at)edointeractive(dot)com>
To: "pgsql-general(at)postgresql(dot)org" <pgsql-general(at)postgresql(dot)org>
Subject: General guidance: Levenshtein distance versus other similarity algorithms
Date: 2012-07-23 16:55:56
Message-ID: 81F2AED71E996746829AC866496B2EA361B364D956@MAIL-NASH01.edo.local
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

Hi,

I am hoping you can give me some guidance here. I'm using postgresql 9.1.

Basically, I'm trying to create a query on a table of businesses that will return all similar matches to a business name. This is a huge table, and there is a lot of variation in names. The length of the string can be up to 255. I've used regex, but there are always some variations of the name that are missed when I do a regex. So I decided to look at distance measures.

Has anyone compared the fuzzstrmatch package to pgsimilarity?

Would the levenshtein function in postgresql be the best way to go here? If so, should I use levenshtein in the contribution package or install the pgsimilarity package? Has anyone tried both implementations?

This would be my query:

Select * from table
WHERE levenshtein (column_name,'Name of the business') <= 3
ORDER BY levenshtein (column_name, 'Name of the business')
Limit 10;

Thank you so much for your help.

Rachel

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Manoj Govindassamy 2012-07-23 17:54:36 Re: Pg_ctl promote -- wait for slave to be promoted fully ?
Previous Message Robert Haas 2012-07-23 15:34:26 Re: postgres 9 bind address for replication