473,698 Members | 2,361 Online
Bytes | Software Development & Data Engineering Community
+ Post

Home Posts Topics Members FAQ

Soundex Function

LacrosseB0ss
113 New Member
Just wondering if anyone out in query-land has used "Soundex" or "Difference " before to find field values that "sound the same". Similar to LIKE but very different. I was shocked when I heard about it, so I've been playing around. Access doesn't seem to like it. Am I just incompetant?

Thanks
- LB

(me using Northwind to goof around with)
Expand|Select|Wrap|Line Numbers
  1. qrySoundexPlaying:
  2. SELECT Customers.*
  3. FROM Customers
  4. WHERE SOUNDEX(ContactName) = SOUNDEX("Ann");
  5.  
OR

Expand|Select|Wrap|Line Numbers
  1. qryDifferencePlaying
  2. SELECT Customers.*
  3. FROM Customers
  4. WHERE DIFFERENCE(ContactName, "Ann") >= 2;
  5.  
May 24 '07 #1
2 4797
Rabbit
12,516 Recognized Expert Moderator MVP
I've heard of it but from what I hear it's not native to Access so you'll have to code your own function.

But I've used it in SAS which has a variant of the SoundEx function but it doesn't work all that well. i.e. Juan sounds like Jaime.

However, it has a different function which quantifies the difference between two strings and you can set your own threshhold. But either way, I don't think there are native functions in Access. Also of note is that using a function like this means you can't use an index to speed up the joins in a query. Which means that large queries could take a long long time.

Case in point, I used the sounds like in SAS to join 20k records to 1.2 million records. It took 10 hours. When I used =, it took 20 seconds.
May 24 '07 #2
LacrosseB0ss
113 New Member
I've been looking up code and how it works and etc etc etc and Juan = Jaime isn't all that bad.

Soundex takes the word and converts it to a 4 character string representation. The first letter will stay the same and then the other 3 letters represent the word without vowels. Example, my name (Matt) would be changed to MTT and you'd get a representation of M### (don't know what it is).

Obviously this can create problems. That's where Difference comes in. Difference will return a number (1 through 4, 4 being the closest match) pertaining to how close the 2 words are. Juan = Jaime would probably be a 1 or it matches but not well. If I spelled my name wrong and typed Mattt or Mett then Matt = Mett/Mattt would return a higher Difference value.

- LB

I posted this more for people who could search for this topic later. Hope it helps someone somewhere.

Case in point, I used the sounds like in SAS to join 20k records to 1.2 million records. It took 10 hours. When I used =, it took 20 seconds
And, yeah, I'm not sure the corporation would be happy with me slowing their servers to a crawl. Thanks for the reply
May 29 '07 #3

Sign in to post your reply or Sign up for a free account.

Similar topics

0
2169
by: fartsniff | last post by:
hey all, i am currently using a search engine on my site that compares values stored in the meta tags with what the user types in. any matches return the "title" of the page, a thumbnail and a link. all is working great. however, i find myself adding all sorts of variations, i.e. gift, gifts. i am starting to store both the soundex and metaphone values along with the keyword for future possibilities. are there any good primers for...
6
3342
by: Ricky Romaya | last post by:
Hi, I'm curious about soundex. All I know that it's a way for making spelling- error-tolerant word matching. What I want to know is whether the soundex algorithm are made exclusively for english language, or can it be used for any arbitrary language with satisfactory performance (by 'satisfactory performance' I meant that it can detect at least 80% spelling-errors). What about PHP soundex support? TIA
1
1816
by: siliconmike | last post by:
Hi I'm using SOUNDEX mysql function to find similar sounding names from a table with 2 million distinct names. Unfortunately there is a single soundex code for every 200,000 names! Meaning there are only 200,000 distinct codes for 2 million entries. Is there any other function / library / technique to work around this immense 1:10 redundancy ? for example, soundex for 'avis', 'apex' and 'apps' is A120, but I'd
3
4530
by: arthur benedetti white | last post by:
has anybody already developed a server side soundex function?
3
6103
by: Vinay Jain | last post by:
Hi I want to write soundex query for example: select * from student where name soundex 'vinay'; In psql it gives error at soundex. Regards Vinay -- Vinay Jain Dissertation Project Trainee DAKE Division
32
8593
by: vonclausowitz | last post by:
Hi All, I have database with names on which I want to use the soundex option. So I have created two seperate fields for the Lastname and Firstname in which I save the Soundex version of a new name I save in the database. I have the soundex code with the 6 numeric option. So I save for example in the field LastnameSE = 600192 and in the FirstnameSE = 545910.
0
8603
by: Hystou | last post by:
Most computers default to English, but sometimes we require a different language, especially when relocating. Forgot to request a specific language before your computer shipped? No problem! You can effortlessly switch the default language on Windows 10 without reinstalling. I'll walk you through it. First, let's disable language synchronization. With a Microsoft account, language settings sync across devices. To prevent any complications,...
0
9157
Oralloy
by: Oralloy | last post by:
Hello folks, I am unable to find appropriate documentation on the type promotion of bit-fields when using the generalised comparison operator "<=>". The problem is that using the GNU compilers, it seems that the internal comparison operator "<=>" tries to promote arguments from unsigned to signed. This is as boiled down as I can make it. Here is my compilation command: g++-12 -std=c++20 -Wnarrowing bit_field.cpp Here is the code in...
0
9027
jinu1996
by: jinu1996 | last post by:
In today's digital age, having a compelling online presence is paramount for businesses aiming to thrive in a competitive landscape. At the heart of this digital strategy lies an intricately woven tapestry of website design and digital marketing. It's not merely about having a website; it's about crafting an immersive digital experience that captivates audiences and drives business growth. The Art of Business Website Design Your website is...
0
7725
agi2029
by: agi2029 | last post by:
Let's talk about the concept of autonomous AI software engineers and no-code agents. These AIs are designed to manage the entire lifecycle of a software development project—planning, coding, testing, and deployment—without human intervention. Imagine an AI that can take a project description, break it down, write the code, debug it, and then launch it, all on its own.... Now, this would greatly impact the work of software developers. The idea...
1
6518
isladogs
by: isladogs | last post by:
The next Access Europe User Group meeting will be on Wednesday 1 May 2024 starting at 18:00 UK time (6PM UTC+1) and finishing by 19:30 (7.30PM). In this session, we are pleased to welcome a new presenter, Adolph Dupré who will be discussing some powerful techniques for using class modules. He will explain when you may want to use classes instead of User Defined Types (UDT). For example, to manage the data in unbound forms. Adolph will...
0
5860
by: conductexam | last post by:
I have .net C# application in which I am extracting data from word file and save it in database particularly. To store word all data as it is I am converting the whole word file firstly in HTML and then checking html paragraph one by one. At the time of converting from word file to html my equations which are in the word document file was convert into image. Globals.ThisAddIn.Application.ActiveDocument.Select();...
0
4369
by: TSSRALBI | last post by:
Hello I'm a network technician in training and I need your help. I am currently learning how to create and manage the different types of VPNs and I have a question about LAN-to-LAN VPNs. The last exercise I practiced was to create a LAN-to-LAN VPN between two Pfsense firewalls, by using IPSEC protocols. I succeeded, with both firewalls in the same network. But I'm wondering if it's possible to do the same thing, with 2 Pfsense firewalls...
1
3046
by: 6302768590 | last post by:
Hai team i want code for transfer the data from one system to another through IP address by using C# our system has to for every 5mins then we have to update the data what the data is updated we have to send another system
3
2001
bsmnconsultancy
by: bsmnconsultancy | last post by:
In today's digital era, a well-designed website is crucial for businesses looking to succeed. Whether you're a small business owner or a large corporation in Toronto, having a strong online presence can significantly impact your brand's success. BSMN Consultancy, a leader in Website Development in Toronto offers valuable insights into creating effective websites that not only look great but also perform exceptionally well. In this comprehensive...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.