Search engine for names

From: Date: Wed, 26 Jul 2000 22:22:45 +0000
Subject: Search engine for names
References: 1  Groups: php.general 
Request: Send a blank email to php-general+get-8422@lists.php.net to get a copy of this message
I've been tugging at this "gordian knot" problem for a while. I've got a solution in place, but it's complicated, and slower than I'd like. Here's my thoughts: I need to take a name, (human) and match it against other names (human) for the closest match. I have a database containing various names, split into first and last name, with soundex precalculated. I keep thinking in terms of a table, that would hold a reference to each record that held "dave" for example, but I'm at a loss to implement this in MySQL, given that a table has to have a fixed number of fields. What I'm picturing would look something like: For "Adam Smith" and "Beth Smith" Adam 165, 702, 993 .... (Could be long, obviously)
Beth    164, 101, 119.....
Smith 165, 164, 102..... So a search on "Adam Smith" would get a 100% match on record 165, and a 50% match on 164, but nothing on the other records. Middle initials could be worked in as well, with a lower score since they are often not used. Soundex is another layer, but I'm not worrying about that until I get past it with literal match. I need to allow for a great many names, possibly >100k, and an easy way to add new names to the "pile" would be critical. Mostly, I'm stuck in how to put this into something that MySQL can hang on to and query easily. Or, am I looking at this the wrong way? -- www.SpamWhack.com A pre-emptive strike against spam Where's dave? http://www.findu.com/cgi-bin/find.cgi?kc6ete-9 My transistor sings with unintended parasitic the smoke escapes By Jeff Stout

« previous php.general (#8422) next »