4

Is it ok to check for SQL returning a Soundex of 0000 based on the assumption that it isn't a valid word, e.g. has digits, spaces, special characters or is there a better way to do this?

Dori
  • 915
  • 1
  • 12
  • 20
jaffa
  • 26,770
  • 50
  • 178
  • 289

1 Answers1

1

I don't think soundex is good for that, I think the SOUNDEX() function will omit the digits, spaces and symbol, for example:

SELECT SOUNDEX("HELLO")
SELECT SOUNDEX("_HEL123O_")

Both give you the same result.

H400

Besides SOUNDEX() has some limitation in the way it works.

You can take a look at the Levenshtein distance, it determines the number of operations you have to do to make one string exactly like another. You can find an implementation here.

HTH

BenMorel
  • 34,448
  • 50
  • 182
  • 322
SubniC
  • 9,807
  • 4
  • 26
  • 33