Uwaga
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:programu SQL Server
Azure SQL Database
Aby zapobiec nadęciu indeksu pełnotekstowego, program SQL Server ma mechanizm, który odrzuca często występujące ciągi, które nie ułatwiają wyszukiwania. 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 będą wyszukiwać w stopwords.
Stopwords. Stopword może być słowem o znaczeniu w określonym języku. Na przykład w języku angielskim wyrazy takie jak "a", "and", "is" i "the" są pominięte z indeksu pełnotekstowego, ponieważ są one znane jako bezużyteczne dla wyszukiwania. Stopword może być również token, który nie ma znaczenia językowego.
listy zatrzymań. Stopwords są zarządzane w bazach danych przy użyciu obiektów nazywanych listami stop. 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. SQL Server jest dostarczany z systemową listą wykluczeń, która zawiera najczęściej używane słowa przestankowe dla każdego obsługiwanego języka, dla każdego języka skojarzonego domyślnie z odpowiednimi analizatorami wyrazów. Możesz skopiować listę zatrzymań systemowych i dostosować kopię, dodając i usuwając stopwords.
Lista zatrzymań systemu jest zainstalowana w bazie danych Resource.
Użyj istniejącej niestandardowej stoplisty z innej bazy danych w obecnym wystąpieniu serwera, a następnie dodaj lub usuń odpowiednio słowa stop.
Tworzenie nowej listy zatrzymań
Tworzenie nowej listy zatrzymań przy użyciu Transact-SQL
Użyj CREATE FULLTEXT STOPLIST.
Tworzenie nowej listy zatrzymań za pomocą programu 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.
Tworzenie indeksu pełnotekstowego i kojarzenie z nim listy zatrzymań
Użyj UTWÓRZ PEŁNOTEKSTOWY INDEKS (Transact-SQL).
Kojarzenie lub usuwanie skojarzenia listy zatrzymań z istniejącym indeksem pełnotekstowym
Użyj ALTER FULLTEXT INDEX (Transact-SQL).
Zmienianie stopwords na liście zatrzymań
Dodawanie lub upuszczanie stopwords z listy zatrzymań za pomocą Transact-SQL
Użyj ALTER FULLTEXT STOPLIST (Transact-SQL).
Dodawanie lub usuwanie stopwords z listy zatrzymań za pomocą programu 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. Ten stopword musi być unikatowy; oznacza to, że nie znajduje się jeszcze na liście zatrzymań dla wybranego 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
Wyświetlanie wszystkich stopwords na liście zatrzymań
Użyj sys.fulltext_stopwords (Transact-SQL).
Uzyskiwanie informacji o wszystkich listach zatrzymania w bieżącej bazie danych
Użyj sys.fulltext_stoplists (Transact-SQL) i sys.fulltext_stopwords (Transact-SQL).
Wyświetlanie wyniku tokenizacji kombinacji wyrazów breaker, thesaurus i stoplist
Użyj sys.dm_fts_parser (Transact-SQL).
Pomiń komunikat o błędzie, jeśli słowa kluczowe powodują niepowodzenie operacji logicznej w pełnotekstowej kwerendzie
Użyj opcji konfiguracji serwera do transformacji słów szumowych.
Więcej informacji na temat pozycji stopwordów
Chociaż ignoruje włączenie słów stopowych, indeks pełnotekstowy uwzględnia ich pozycję. Rozważmy na przykład frazę "Instrukcje mają zastosowanie do tych modeli Adventure Works Cycles". W poniższej tabeli przedstawiono położenie wyrazów w frazie:
Słowo | Pozycja |
---|---|
Instrukcje | 1 |
są | 2 |
zastosowalny | 3 |
do | 4 |
te | 5 |
Przygoda | 6 |
Działa | 7 |
Cykli | 8 |
Modele | 9 |
Słowa kluczowe "są", "to" i "te", które znajdują się na pozycjach 2, 4 i 5, są pomijane w indeksie pełnotekstowym. 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
Wyrazy szumu programu SQL Server 2005 (9.x) zostały zastąpione przez stopwords. Po uaktualnieniu bazy danych z programu SQL Server 2005 (9.x) pliki wyrazów szumu nie są już używane. Pliki wyrazów szumu są jednak przechowywane w folderze FTDATA\ FTNoiseThesaurusBak i można ich używać później podczas aktualizowania lub tworzenia odpowiednich list stop. Aby uzyskać informacje na temat aktualizowania plików wyrazów szumu do list zatrzymania, zajrzyj do Upgrade Full-Text Search.