Я не думаю, что soundex хорош для этого, я думаю, что функция SOUNDEX () будет пропускать цифры, пробелы и символы, например:
SELECT SOUNDEX("HELLO")
SELECT SOUNDEX("_HEL123O_")
Оба дают вам одинаковый результат.
H400
Кроме того, SOUNDEX () имеет некоторые ограничения в том, как он работает.
Вы можете взглянуть на расстояние Левенштейна, оно определяет количество операций, которые вынужно сделать, чтобы сделать одну строку точно такой же, как другая.Вы можете найти реализацию здесь .
HTH