semantickeyphrasetable (Transact-SQL)

Aplica-se a: SQL Server

Devolve uma tabela com zero, uma ou mais linhas para frases-chave associadas às colunas especificadas na tabela especificada.

Esta função de conjunto de linhas pode ser referenciada na cláusula FROM de uma instrução SELECT como se fosse um nome de tabela normal.

Transact-SQL convenções de sintaxe

Syntax

SEMANTICKEYPHRASETABLE  
    (  
    table,  
    { column | (column_list) | * }  
     [ , source_key ]  
    )  

Arguments

table
É o nome de uma tabela que tem o texto completo e a indexação semântica ativadas.

Este nome pode ser de uma a quatro partes, mas um nome de servidor remoto não é permitido.

column
Nome da coluna indexada para a qual os resultados devem ser retornados. A coluna deve ter a indexação semântica habilitada.

column_list
Indica várias colunas, separadas por uma vírgula e entre parênteses. Todas as colunas devem ter a indexação semântica habilitada.

*
Indica que todas as colunas com indexação semântica habilitada estão incluídas.

source_key
Chave exclusiva para a linha, para solicitar resultados para uma linha específica.

A chave é implicitamente convertida para o tipo de chave exclusiva de texto completo na tabela de origem sempre que possível. A chave pode ser especificada como uma constante ou uma variável, mas não pode ser uma expressão ou o resultado de uma subconsulta escalar. Se source_key for omitido, então os resultados são devolvidos para todas as linhas.

Tabela retornada

A tabela seguinte descreve a informação sobre as frases-chave que esta função de conjunto de linhas devolve.

Column_name Tipo Description
column_id int ID da coluna da qual a frase-chave atual foi extraída e indexada.

Consulte as funções COL_NAME e COLUMNPROPERTY para detalhes sobre como recuperar o nome das colunas a partir de column_id e vice-versa.
document_key *

Essa chave corresponde ao tipo da chave exclusiva na tabela de origem.
Valor-chave único do documento ou linha a partir do qual a frase-chave atual foi indexada.
Frase-chave NVARCHAR A frase-chave encontrada na coluna identificada por column_id e associada ao documento especificado por document_key.
pontuação REAL Um valor relativo para esta frase-chave na sua relação com todas as outras frases-chave do mesmo documento na coluna indexada.

O valor é um valor decimal fracionário no intervalo de [0,0, 1,0], onde uma pontuação mais alta representa um peso maior e 1,0 é a pontuação perfeita.

Observações gerais

Para mais informações, consulte Encontrar Frases-Chave em Documentos com Pesquisa Semântica.

Metadata

Para informações e estado sobre extração semântica de frases-chave e população, consulte as seguintes vistas de gestão dinâmica:

Segurança

Permissions

Requer permissões SELECT na tabela base onde foram criados os índices de texto completo e semântico.

Exemplos

Exemplo 1: Encontrar as principais frases-chave num documento específico

O exemplo seguinte recupera as 10 principais frases-chave do documento especificado pela @DocumentId variável na coluna Document da tabela Production.Document da base de dados de exemplo AdventureWorks. A @DocumentId variável representa um valor da coluna chave do índice do texto completo. A função SEMANTICKEYPHRASETABLE recupera estes resultados de forma eficiente, utilizando uma pesquisa de índice em vez de uma varredura de tabela. Este exemplo assume que a coluna está configurada para indexação de texto completo e semântica.

SELECT TOP(10) KEYP_TBL.keyphrase  
FROM SEMANTICKEYPHRASETABLE  
    (  
    Production.Document,  
    Document,  
    @DocumentId  
    ) AS KEYP_TBL  
ORDER BY KEYP_TBL.score DESC;  
  

Exemplo 2: Encontre os principais documentos que contêm uma frase-chave específica

O exemplo seguinte recupera os 25 principais documentos que contêm a frase-chave "Bracket" da coluna Document da tabela Production.Document da base de dados de exemplo AdventureWorks. Este exemplo assume que a coluna está configurada para indexação de texto completo e semântica.

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;