Список полнотекстового индекса для персидского языка - PullRequest
1 голос
/ 19 февраля 2020

Мне нужно настроить полнотекстовый поиск для персидского языка. И настройте слова и синонимы Stop / Noise для этого языка.

Мой SQL Версия сервера - 2016, и полнотекстовый поиск установлен.

Ответы [ 2 ]

2 голосов
/ 29 апреля 2020

Для использования персидского языка в SQL Стоп-лист сервера, полнотекстовый каталог и т. Д. c, просто мы должны использовать Neutral. Если вы не используете Neutral в каталоге, я предложил вам изменить его на Neutral, иногда это пустое значение, как показано ниже:

enter image description here

Ваша проблема решается с помощью этого запроса для любого языка:

--View Stoplist word
SELECT w.stoplist_id,
   l.name,
   w.stopword,
   w.language
FROM sys.fulltext_stopwords AS w
   INNER JOIN sys.fulltext_stoplists AS l
     ON w.stoplist_id = l.stoplist_id;

-- Stopwords list
CREATE FULLTEXT STOPLIST StopListCustome;
GO

-- Add a stopword
ALTER FULLTEXT STOPLIST StopListCustome
    ADD 'SQL' LANGUAGE 'English';
GO
ALTER FULLTEXT STOPLIST StopListCustome 
    ADD 'از' LANGUAGE 'Neutral';

Вы можете использовать списки ниже для добавления любого текста списка остановок на персидском и английском языках sh:

Загрузить Engli sh стоп-лист

Загрузить персидский или фарси-стоплист для многих слов

Загрузить персидский или фарси-стоп для стандартных слов

1 голос
/ 19 февраля 2020

Наконец-то я нашел решение.

По умолчанию при создании полнотекстового индекса он связан с системным стоп-листом. Стоп-лист по умолчанию содержит более 150 слов для языка Engli sh.

настройка-и-управление-стоп-словами-и-стоп-списками-для-полнотекстового поиска

полнотекстовый поиск, стоп-лист и стоп-слово

Просто откройте этот файл и добавьте свои слова

[SQL Путь к серверу] \ MSSQL13.MSSQLSERVER \ MSSQL \ FTData \ tsglobal. xml

<XML ID="Microsoft Search Thesaurus">
<thesaurus xmlns="x-schema:tsSchema.xml">
<diacritics_sensitive>0</diacritics_sensitive>
    <expansion>
        <sub>Internet Explorer</sub>
        <sub>IE</sub>
        <sub>IE5</sub>
    </expansion>
    <expansion>
        <sub>سازگار سیستم خاورمیانه</sub>
        <sub>ستیران</sub>
    </expansion>
        <expansion>
        <sub>آبجی</sub>
        <sub>خواهر</sub>
    </expansion>
    <replacement>
        <pat>NT5</pat>
        <pat>W2K</pat>
        <sub>Windows 2000</sub>
    </replacement>
    <expansion>
        <sub>run</sub>
        <sub>jog</sub>
    </expansion>
</thesaurus>

И затем выполните эту команду SQL.

EXEC sys.sp_fulltext_load_thesaurus_file 0;  

И для создания пользовательского список остановок просто введите этот код:

CREATE FULLTEXT STOPLIST [PersianStopList]

и затем добавьте свой список остановок

    ALTER FULLTEXT STOPLIST [PersianStopList] ADD 'از' LANGUAGE 'Neutral';

Полная информация на персидском языке: https://www.dotnettips.info/courses/topics/13# / page / 1 / date / дез c

...