Как установить предпочтения в индексе текстового поиска, чтобы включить подстроку персидского текста

Чтобы иметь возможность использовать поиск по подстроке в индексации текстового поиска, я использовал следующие настройки, но это не работает для персидских текстов, вместо этого поиск по английскому тексту работает отлично.
Создать предпочтение:

begin 
  ctx_ddl.create_preference('a_lex', 'AUTO_LEXER');
end;

begin
  ctx_ddl.create_preference('mywordlist', 'BASIC_WORDLIST');
  ctx_ddl.set_attribute('mywordlist','PREFIX_INDEX','YES');
  ctx_ddl.set_attribute('mywordlist','PREFIX_MIN_LENGTH',1);
  ctx_ddl.set_attribute('mywordlist','SUBSTRING_INDEX', 'YES');

  ctx_ddl.set_attribute('mywordlist','FUZZY_MATCH','AUTO');
  ctx_ddl.set_attribute('mywordlist','FUZZY_SCORE','1');
  ctx_ddl.set_attribute('mywordlist','FUZZY_NUMRESULTS','5000');
  ctx_ddl.set_attribute('mywordlist','STEMMER','AUTO');
end;

Индексирование запроса:

create index test on myTable(name) 
indextype is ctxsys.context online
parameters (
       'SYNC (on commit)
       LEXER a_lex
       MEMORY 200M 
       Wordlist mywordlist
       ') parallel 4; 

Заполненные данные: myTable { id: 1, Name: رفتن }

select name from  myTable where contains(name,'%رفت%')>0

0 ответов

Другие вопросы по тегам