Hledání klíčových frází v dokumentech pomocí sémantického vyhledávání
platí pro:SQL Server
Popisuje, jak najít klíčové fráze v dokumentech nebo textových sloupcích nakonfigurovaných pro statistické sémantické indexování.
Vyhledání klíčových frází v dokumentech pomocí FUNKCE SEMANTICKEYPHRASETABLE
Pokud chcete identifikovat klíčové fráze v konkrétních dokumentech nebo identifikovat dokumenty, které obsahují konkrétní klíčové fráze, zadejte dotaz na funkci sémantickeyphrasetable (Transact-SQL).
FUNKCE SEMANTICKEYPHRASETABLE vrátí tabulku s nulou, jednou nebo více řádky pro tyto klíčové fráze přidružené ke sloupcům v zadané tabulce. Na tuto funkci sady řádků lze odkazovat v klauzuli FROM příkazu SELECT, jako by se jednalo o běžný název tabulky.
Poznámka
V této verzi jsou pro sémantické vyhledávání indexována pouze jedno slova; víceslovné fráze (ngramy) nejsou indexovány. Také různé formy stejného slova jsou indexovány samostatně; Například "počítač" a "počítače" se indexují samostatně.
Podrobné informace o parametrech, které vyžaduje funkce SEMANTICKEYPHRASETABLE, a o tabulce výsledků, kterou vrací, najdete v tématu semantickeyphrasetable (Transact-SQL).
Důležitý
Cílové sloupce musí mít povolené fulltextové a sémantické indexování.
Příklad 1: Vyhledání klíčových frází v konkrétním dokumentu
Následující příklad načte prvních 10 klíčových frází z dokumentu určeného proměnnou @DocumentId ve sloupci Document v tabulce Production.Document ukázkové databáze AdventureWorks. Proměnná @DocumentId představuje hodnotu z klíčového sloupce fulltextového indexu.
SELECT TOP(10) KEYP_TBL.keyphrase
FROM SEMANTICKEYPHRASETABLE
(
Production.Document,
Document,
@DocumentId
) AS KEYP_TBL
ORDER BY KEYP_TBL.score DESC;
GO
Funkce SEMANTICKEYPHRASETABLE tyto výsledky efektivně načte pomocí hledání indexu místo prohledávání tabulky.
Příklad 2: Vyhledání horních dokumentů obsahujících konkrétní klíčovou frázi
Následující příklad načte prvních 25 dokumentů, které obsahují klíčovou frázi "Závorka" ze sloupce Document v tabulce Production.Document v ukázkové databázi AdventureWorks.
SELECT TOP (25) DOC_TBL.DocumentID, DOC_TBL.DocumentSummary
FROM Production.Document AS DOC_TBL
INNER JOIN SEMANTICKEYPHRASETABLE
(
Production.Document,
Document
) AS KEYP_TBL
ON DOC_TBL.DocumentID = KEYP_TBL.document_key
WHERE KEYP_TBL.keyphrase = 'Bracket'
ORDER BY KEYP_TBL.Score DESC;
GO