Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
SOUNDEX() c Кирилицей.
|
|||
|---|---|---|---|
|
#18+
Добрый день. Возникла необходимость поиска двойников, то есть найти похожие записи , типа НАТАЛ Ь Я и НАТАЛ И Я. Основной массив людей находится в базе DB2 порядка 2,5 млн записей. Когда приносят массив, скажем так неопознанных людей порядка несколько сотен. То приходится основной массив выгружать на клиента. И уже при помощи самопальной функции аналога SOUNDEX() идет анализ. Ну тут в плане безопасности, запрещают выгружать основной массив на клиентскую станцию, требуют маленький массив наоборот грузить на сервер DB2 и проверять средствами DB2. До сегоднешнего дня думал, что функция SOUNDEX() в DB2 для работы с кирилицей ни как не приспособлена, но сделал запрос и допустим SOUNDEX('НАТАЛЬЯ') = SOUNDEX('НАТАЛИЯ'), хотя функция DIFFERENCE('НАТАЛЬЯ','НАТАЛИЯ') возвращают 1, а вроде как должен 4. Для эксперемента выполнил такой запрос Код: plaintext Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.05.2007, 12:50 |
|
||
|
SOUNDEX() c Кирилицей.
|
|||
|---|---|---|---|
|
#18+
ну вообще-то для выполнения ETL есть специальные инструменты. Которые покрывают и поставленную задачу. другой вопрос, что они стОят... Вот тут-то и приходит идея о самописном решении... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.05.2007, 13:28 |
|
||
|
SOUNDEX() c Кирилицей.
|
|||
|---|---|---|---|
|
#18+
Берешь делаешь функцию TRANSLIT ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.05.2007, 19:07 |
|
||
|
SOUNDEX() c Кирилицей.
|
|||
|---|---|---|---|
|
#18+
В DB2 есть функция, которая определят является ли символ буквой или цифрой, что то вроде ISALPHA() и ISDIGIT(). Или что-то свое придумывать надо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.05.2007, 09:43 |
|
||
|
SOUNDEX() c Кирилицей.
|
|||
|---|---|---|---|
|
#18+
Нет пишешь функцию или ищешь в интернете которая переводит Наташа в Natasha Щелково в Schelkovo .... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.05.2007, 09:50 |
|
||
|
SOUNDEX() c Кирилицей.
|
|||
|---|---|---|---|
|
#18+
Создаю cвою UDF, например SOUNDRUS(). Где ее разместить, чтобы при ее вызове не указывать перед ее именем название схемы где она находится? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.05.2007, 12:41 |
|
||
|
SOUNDEX() c Кирилицей.
|
|||
|---|---|---|---|
|
#18+
OlegA67Создаю cвою UDF, например SOUNDRUS(). Где ее разместить, чтобы при ее вызове не указывать перед ее именем название схемы где она находится?В динамическом sql неквалифицированные имена функций ищутся в списке схем (слева на право до совпадения имени, кол-ва и типов параметров), указанном в регистровой переменной CURRENT PATH. По умолчанию ее значение равно "SYSIBM","SYSFUN","SYSPROC","имя_пользователя". Установить ее значение можно командой SET PATH. Например: SET PATH = CURRENT PATH,MY_SCHEMA Можно установить через db2cli.ini ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.05.2007, 12:52 |
|
||
|
SOUNDEX() c Кирилицей.
|
|||
|---|---|---|---|
|
#18+
Mark BarinsteinМожно установить через db2cli.ini А в какой секции прописывать? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.05.2007, 09:38 |
|
||
|
SOUNDEX() c Кирилицей.
|
|||
|---|---|---|---|
|
#18+
OlegA67Можно установить через db2cli.ini А в какой секции прописывать?В секции, относящейся к вашей БД. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.05.2007, 11:34 |
|
||
|
SOUNDEX() c Кирилицей.
|
|||
|---|---|---|---|
|
#18+
Прописал в db2cli.ini следующее [REGION48] DBALIAS=REGION48 SchemaList="’PRG’" Переконектился к базе, набираю команду Код: plaintext Код: plaintext Что сделал не так? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.05.2007, 11:56 |
|
||
|
SOUNDEX() c Кирилицей.
|
|||
|---|---|---|---|
|
#18+
OlegA67Что сделал не так? Код: plaintext 1. 2. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.05.2007, 12:58 |
|
||
|
|

start [/forum/topic.php?fid=43&msg=34534508&tid=1604572]: |
0ms |
get settings: |
7ms |
get forum list: |
17ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
50ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
46ms |
get tp. blocked users: |
1ms |
| others: | 212ms |
| total: | 350ms |

| 0 / 0 |
