Notatka
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Dotyczy:SQL Server
Azure SQL Database
Azure SQL Managed Instance
Aby zapobiec nadmiernemu obciążeniu indeksu pełnego tekstu, SQL Server Database Engine posiada mechanizm usuwający często występujące ciągi tekstów, które nie pomagają w wyszukiwaniu. Te odrzucone ciągi są nazywane stopwords. Podczas tworzenia indeksu aparat Full-Text pomija stopwords z indeksu pełnotekstowego. Oznacza to, że zapytania pełnotekstowe nie przeszukują słów stopowych.
| Termin | Description |
|---|---|
| Stopwordy | Stopword może być słowem o znaczeniu w określonym języku. Na przykład w języku angielskim słowa takie jak a, and, is, i the są pomijane w indeksie pełnym tekstem, ponieważ wiadomo, że są bezużyteczne dla wyszukiwania. Słowo stopowe może być także symbolem bez znaczenia językowego. |
| Listy zatrzymań | Stopwordy są zarządzane w bazach danych za pomocą obiektów zwanych stoplistami. Lista 'stoplista' to lista wyrażeń wykluczanych, która po powiązaniu z indeksem pełnotekstowym jest stosowana do zapytań pełnotekstowych w tym indeksie. |
Korzystanie z istniejącej listy zatrzymań
Możesz korzystać z istniejącej stoplisty w następujący sposób:
Użyj stoplisty dostarczonej przez system w bazie danych. Aparat bazy danych zawiera systemową listę wykluczanych słów, która obejmuje najczęściej używane słowa wykluczane dla każdego obsługiwanego języka, to znaczy dla każdego języka domyślnie skojarzonego z określonymi modułami podziału wyrazów. Możesz skopiować listę zatrzymań systemowych i dostosować kopię, dodając i usuwając stopwords.
Lista wykluczeń systemu jest zainstalowana w bazie danych zasobów.
Użyj istniejącej niestandardowej listy wykluczeń z innej bazy danych w bieżącej instancji serwera, a następnie odpowiednio dodaj lub usuń wyrazy wykluczane.
Tworzenie nowej listy zatrzymań
Możesz utworzyć listę wyrazów ignorowanych za pomocą języka Transact-SQL (T-SQL) lub programu SQL Server Management Studio (SSMS).
Tworzenie nowej listy zatrzymań przy użyciu Transact-SQL
Użyj CREATE FULLTEXT STOPLIST.
Stwórz nową listę stopów w SQL Server Management Studio
W Eksploratorze obiektów rozwiń serwer.
Rozwiń węzeł Databases, a następnie rozwiń bazę danych, w której chcesz utworzyć listę wykluczeń pełnotekstowych.
Rozwiń Storage, a następnie kliknij prawym przyciskiem myszy Full-Text Stoplisty.
Wybierz Nowe Full-Text Listy zatrzymań.
Wprowadź nazwę nowej listy zatrzymań.
Opcjonalnie określ inną osobę jako właściciela listy zatrzymań.
Wybierz jedną z następujących opcji tworzenia listy zatrzymań:
Tworzenie pustej listy zatrzymań
Utwórz z listy zatrzymań systemu
Utwórz na podstawie istniejącej listy zatrzymań pełnotekstowych
Aby uzyskać więcej informacji, zobacz New Full-Text Stoplist (strona ogólna).
Wybierz pozycję OK.
Używanie listy stop w zapytaniach pełnotekstowych
Aby użyć listy zatrzymań w zapytaniach, musisz skojarzyć ją z indeksem pełnotekstowym. Listę zatrzymań można dołączyć do indeksu pełnotekstowego podczas tworzenia indeksu lub później zmienić indeks, aby dodać listę stop.
| Zadanie | Metoda |
|---|---|
| Utwórz indeks pełnotekstowy i skojarz go z listą wykluczanych wyrazów | Użyj CREATE FULLTEXT INDEX. |
| Kojarzenie lub usuwanie skojarzenia listy zatrzymań z istniejącym indeksem pełnotekstowym | Użyj ALTER FULLTEXT INDEX. |
Zmienianie stopwords na liście zatrzymań
Możesz modyfikować słowa stopowe w liście stop, używając Transact-SQL (T-SQL) lub SQL Server Management Studio (SSMS).
Dodawanie lub upuszczanie stopwords z listy zatrzymań za pomocą Transact-SQL
Użyj ALTER FULLTEXT STOPLIST.
Dodaj lub usuń słowa stopowe z listy stop za pomocą SQL Server Management Studio
W Eksploratorze obiektów rozwiń serwer.
Rozwiń element Bazy danych, a następnie rozwiń bazę danych.
Rozwiń węzeł Storage, a następnie wybierz pełnotekstowe listy wykluczeń.
Kliknij prawym przyciskiem myszy listę zatrzymań, której właściwości chcesz zmienić, a następnie wybierz pozycję Właściwości.
W oknie dialogowym Full-Text Właściwości listy zatrzymań:
W polu listy Akcja wybierz jedną z następujących akcji: Dodaj słowo stop, Usuń słowo stop, Usuń wszystkie słowa stoplub wyczyść listę stop.
Jeśli dla wybranej akcji pole tekstowe słowo kluczowe jest aktywne, wprowadź jedno słowo stop. To słowo stopowe musi być unikatowe. Nie może już być na tej liście zatrzymań dla wybranego przez ciebie języka.
Jeśli pole listy języka pełnotekstowego jest włączone dla wybranej akcji, wybierz język.
Wybierz pozycję OK.
Zarządzanie listami zatrzymania i ich użyciem
Skorzystaj z poniższych metod, aby wyświetlać listy wykluczeń i zarządzać nimi.
| Zadanie | Metoda |
|---|---|
| Wyświetlanie wszystkich stopwords na liście zatrzymań | Użyj sys.fulltext_stopwords. |
| Uzyskaj informacje o wszystkich listach stopów w aktualnej bazie danych | Używaj sys.fulltext_stoplists i sys.fulltext_stopwords. |
| Wyświetlanie wyniku tokenizacji kombinacji wyrazów breaker, thesaurus i stoplist | Użyj sys.dm_fts_parser. |
| Pomiń komunikat o błędzie, jeśli słowa kluczowe powodują niepowodzenie operacji logicznej w pełnotekstowej kwerendzie | Użyj opcji Konfiguracja serwera: przekształcanie słów ignorowanych. |
Więcej informacji o pozycji stopword
Chociaż indeks pełen tekstu pomija uwzględnienie słów stopowych, uwzględnia ich położenie. Na przykład rozważmy frazę Instructions are applicable to these Adventure Works Cycles models. W poniższej tabeli przedstawiono położenie wyrazów w frazie:
| Słowo | Pozycja |
|---|---|
Instructions |
1 |
are |
2 |
applicable |
3 |
to |
4 |
these |
5 |
Adventure |
6 |
Works |
7 |
Cycles |
8 |
models |
9 |
Słowa stopowe are, to i these, które znajdują się na pozycjach 2, 4 i 5, są pomijane w indeksie pełnego tekstu. Jednak ich informacje pozycyjne są utrzymywane, pozostawiając w ten sposób pozycję innych słów w frazie bez zmiany.
Ulepszanie słów szumowych w SQL Server 2005
Słowa szumowe SQL Server 2005 (9.x) zostały zastąpione słowami stopowymi. Po uaktualnieniu bazy danych z programu SQL Server 2005 (9.x) pliki wyrazów szumu nie są już używane. Jednak pliki słów ignorowanych są przechowywane w folderze FTDATA\FTNoiseThesaurusBak, a później można ich użyć podczas aktualizowania lub tworzenia odpowiednich list wykluczanych słów. Aby uzyskać informacje na temat aktualizowania plików wyrazów szumu do list zatrzymania, zajrzyj do Upgrade Full-Text Search.