Можно ли определить процент совпадения с помощью возврата кода с помощью функции pl sql soundex? - PullRequest
1 голос
/ 12 декабря 2011

Можно ли определить процент совпадения двух строк с помощью возврата кода функцией soundex из plsql?

Ответы [ 2 ]

1 голос
/ 12 декабря 2011

Soundex не очень надежен для сопоставления строк, особенно если они имеют определенную длину, вы можете захотеть взглянуть на опции пакета UTL_MATCH.

Вы можете использовать метод Jaro-Winkler в пакете UTL_MATCH. Есть похожий вопрос по SO здесь: Как я могу использовать jaro-winkler, чтобы найти ближайшее значение в таблице?

Документы UTL_MATCH здесь: http://docs.oracle.com/cd/E14072_01/appdev.112/e10577/u_match.htm

Здесь также есть несколько хороших документов по соответствующим строкам: http://docs.oracle.com/cd/E11882_01/owb.112/e10935/match_merge.htm

Надеюсь, это поможет ...

0 голосов
/ 12 декабря 2011

Функция разности преобразует две строки в их коды Soundex, а затем сообщает количество совпадающих позиций кода.Поскольку коды Soundex состоят из четырех символов, результат варьируется от нуля до четырех, при этом ноль не соответствует, а четыре - точное совпадение.(Таким образом, функция названа неправильно - подобие было бы лучшим именем.)

SELECT * FROM s WHERE difference(s.nm, 'john') > 2;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...