Some people have suggested normalizing the DB, but I believe the question is not finding duplicates in a database, however just similarities. I.E. Sales: Customer calls and uses Bob as his first name instead of Robert, or gives a different office number but at the same address. The sales person should be able to key in his current information, and see that there are a few possible matches so they can update his old information rather than entering new information and having Bob and Robert as multiple entries in the DB. So after all that I don't have a solution, but I'd be interested in what everyone else comes up with.