SOUNDSLIKE( ) function
Returns a logical value indicating whether a string phonetically matches a comparison string.
Syntax
SOUNDSLIKE(name, sounds_like_name)
Parameters
Name | Type | Description |
---|---|---|
name | character | The first string in the comparison. |
sounds_like_name | character | The second string in the comparison. |
Output
Logical. Returns T (true) if the values being compared phonetically match, and F (false) otherwise.
Examples
Basic examples
Returns T, because "Fairdale" and "Faredale" both have a soundex code of F634:
SOUNDSLIKE("Fairdale","Faredale")
Returns F, because "Jonson" has a soundex code of J525, and "Jonston" has a soundex code of J523:
SOUNDSLIKE("Jonson","Jonston")
Returns a logical value (T or F) indicating whether the soundex code for each value in the Last_Name field matches the soundex code for the string "Smith":
SOUNDSLIKE(Last_Name,"Smith")
Advanced examples
Isolating values that sound like "Smith"
Create a filter that isolates all values in the Last_Name field that sound like "Smith":
SET FILTER TO SOUNDSLIKE(Last_Name,"Smith")
Remarks
When to use SOUNDSLIKE( )
Use the SOUNDSLIKE( ) function to find values that sound similar. Phonetic similarity is one way of locating possible duplicate values, or inconsistent spelling in manually entered data.
How it works
SOUNDSLIKE( ) converts the comparison strings to four-character American Soundex codes, which are based on the first letter, and the first three consonants after the first letter, in each string.
The function then compares each string's code and returns a logical value indicating whether they match.
For more information about soundex codes, see SOUNDEX( ) function.
Case sensitivity
The function is not case-sensitive, so "SMITH" is equivalent to "smith."
Limitations of the soundex process
Both the SOUNDSLIKE( ) and SOUNDEX( ) functions have certain limitations:
- The soundex algorithm is designed to work with words pronounced in English, and has varying degrees of effectiveness when used with other languages.
- Although the soundex process performs a phonetic match, matching
words must all begin with the same letter, which means that some
words that sound the same are not matched.
For example, a word that begins with "F", and a word that begins with a "Ph", could sound the same but they will never be matched.
Related functions
- SOUNDEX( ) an alternate method for phonetically comparing strings.
- ISFUZZYDUP( ) and LEVDIST compare strings based on an orthographic comparison (spelling) rather than on a phonetic comparison (sound).
- DICECOEFFICIENT( ) de-emphasizes or completely ignores the relative position of characters or character blocks when comparing strings.