Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
platí pro: SQL Server
Azure SQL Database
Azure SQL Managed Instance
Aby se zabránilo přetížení indexu plného textu, má Databázový stroj systému SQL Server mechanismus, který vyhazuje běžně se vyskytující řetězce, jež vyhledávání nepomáhají. Tyto zahozené řetězce se nazývají stopwords. Při vytváření indexu modul Full-Text vynechá stopwords z fulltextového indexu. To znamená, že dotazy v plném textu nevyhledávají na stopwordech.
| Term | Description |
|---|---|
| Stopová slova | Stop-slovo může být slovo s významem v určitém jazyce. Například v angličtině jsou slova jako a, and, is, a the vynechána z celého textového indexu, protože jsou známa jako nepoužitelná pro vyhledávání. Stopword může být také symbolem , který nemá jazykový význam. |
| Seznamy vyloučených slov | Stopová slova jsou v databázích spravována pomocí objektů nazývaných stoplisty. Seznam stopslov je seznam slov, která se přiřazují k fulltextovému indexu a používají se při fulltextových dotazech na tento index. |
Použití existujícího seznamu stop
Existující seznam stop můžete použít následujícími způsoby:
Použijte seznam stop zadaný systémem v databázi. Database Engine obsahuje systémový stoplist, který obsahuje nejčastěji používaná stopwords pro každý podporovaný jazyk, tedy pro každý jazyk přiřazený daným word breakerům ve výchozím nastavení. Kopii seznamu stop systému můžete zkopírovat a přizpůsobit přidáním a odebráním stopslov.
Systémový stoplist je nainstalován v databázi zdrojů.
Použijte existující vlastní stoplist z jiné databáze v aktuální instanci serveru a pak podle potřeby přidejte nebo vynechávejte stopwordy.
Vytvoření nového seznamu stop
Stoplist můžete vytvořit pomocí Transact-SQL (T-SQL) nebo SQL Server Management Studio (SSMS).
Vytvoření nového seznamu stop pomocí Transact-SQL
Použijte CREATE FULLTEXT STOPLIST.
Vytvořte nový stoplist pomocí SQL Server Management Studio
V Průzkumníku objektů rozbalte server.
Rozbalte Databázea potom rozbalte databázi, ve které chcete vytvořit úplný seznam stop.
Rozbalte úložiště a potom klikněte pravým tlačítkem na Full-Text seznam stop.
Vyberte Nový Full-Text Stoplist.
Zadejte název nového seznamu stoplist.
Volitelně můžete jako vlastníka seznamu stop určit někoho jiného.
Vyberte jednu z následujících možností vytvořit seznam stop:
vytvoření prázdného seznamu stop
Vytvořit ze systému stoplist
Vytvořit z existujícího fulltextového stoplistu
Další informace naleznete v tématu Nový stoplist Full-Text (Obecná stránka).
Vyberte OK.
Použití seznamu stop v fulltextových dotazech
Pokud chcete v dotazech použít seznam stop, musíte ho přidružit k fulltextovém indexu. Seznam stop můžete při vytváření indexu připojit k fulltextovém indexu nebo později změnit index a přidat seznam stop.
| Task | Metoda |
|---|---|
| Vytvořte fulltextový index a přidružte jej k seznamu stopslov | Použijte CREATE FULLTEXT INDEX. |
| Přidružení nebo zrušení přidružení stoplistu k existujícímu fulltextovému indexu | Použijte ALTER FULLTEXT INDEX. |
Změna zarážky v seznamu stop
Stopwordy v seznamu stop můžete upravit pomocí Transact-SQL (T-SQL) nebo SQL Server Management Studio (SSMS).
Přidání nebo vyřazení z stoplistu pomocí Transact-SQL
Použijte ALTER FULLTEXT STOPLIST.
Přidání nebo odebrání stop slov ze seznamu stop slov pomocí SQL Server Management Studio
V Průzkumníku objektů rozbalte server.
Rozbalte Databázea potom databázi rozbalte.
Rozbalte úložištěa vyberte stoplisty fulltextu.
Pravým tlačítkem myši klikněte na seznam stop, jehož vlastnosti chcete změnit, a vyberte Vlastnosti.
V dialogovém okně Full-Text Vlastnosti seznamu stop:
V seznamu Akce vyberte jednu z následujících akcí: Přidat stopslovo, Odstranit stopslovo, Odstranit všechna stopslovanebo Vymazat seznam stopslov.
Pokud je pro vybranou akci povolené textové pole stopslovo, zadejte jedno stopslovo. Toto slovo musí být jedinečné. Nemůže už být v tomto seznamu stop pro jazyk, který si vyberete.
Pokud je seznam celotextových jazyků povolen pro vybranou akci, vyberte jazyk.
Vyberte OK.
Správa seznamů stop a jejich využití
Použijte následující metody pro zobrazení a správu stoplistů.
| Task | Metoda |
|---|---|
| Zobrazit všechna stop slova v seznamu stopslov | Použijte sys.fulltext_stopwords. |
| Získejte informace o všech stoplistech v aktuální databázi | Používejte sys.fulltext_stoplists a sys.fulltext_stopwords. |
| Zobrazit výsledek tokenizace kombinace dělitele slov, slovníku synonym a stoplistu | Použijte sys.dm_fts_parser. |
| Potlačit chybovou zprávu, pokud stopwords způsobí selhání Booleovské operace ve fulltextovém vyhledávání | Použijte konfiguraci serveru: transformujte šumová slova. |
Více informací o pozici stop slova
Ačkoli index plného textu ignoruje zařazení stopwordů, bere v úvahu jejich pozici. Například uvažujme frázi, Instructions are applicable to these Adventure Works Cycles models. Následující tabulka znázorňuje pozici slov ve frázi:
| Slovo | Postavení |
|---|---|
Instructions |
1 |
are |
2 |
applicable |
3 |
to |
4 |
these |
5 |
Adventure |
6 |
Works |
7 |
Cycles |
8 |
models |
9 |
Stopová slova are, to, a these která jsou na pozicích 2, 4 a 5, jsou v plném textu indexu vynechána. Jejich poziční informace jsou však zachovány, takže pozice ostatních slov ve frázi není ovlivněna.
Upgrade slov šumu z SQL Serveru 2005
Šumová slova v SQL Server 2005 (9.x) jsou nahrazena stopovými slovy. Když je databáze upgradována z SQL Serveru 2005 (9.x), soubory slov šumu se už nepoužívají. Avšak soubory šumových slov jsou uloženy ve složce FTDATA\FTNoiseThesaurusBak a můžete je později použít při aktualizaci nebo vytváření odpovídajících seznamů stop slov. Informace o upgradu souborů hlukových slov na stoplisty naleznete v tématu Upgrade Full-Text Vyhledávání.