Compartir a través de


Buscar frases clave en documentos con la búsqueda semántica

Describe cómo buscar las frases clave en documentos o columnas de texto configurados para la indización semántica estadística.

En este tema

Deseo…

  • Buscar frases clave en documentos

    • Cómo: buscar frases clave en documentos con SEMANTICKEYPHRASETABLE

    • Ejemplo: buscar las frases clave principales de un documento determinado

    • Ejemplo: buscar los documentos principales que contienen una frase clave específica

Buscar frases clave en documentos

Cómo: buscar frases clave en documentos con SEMANTICKEYPHRASETABLE

Para identificar las frases clave de documentos específicos o para identificar documentos que contengan frases clave específicas, consulte la función semantickeyphrasetable (Transact-SQL).

SEMANTICKEYPHRASETABLE devuelve una tabla con cero, una o más filas para las frases clave asociadas con las columnas de la tabla especificada. Se puede hacer referencia a esta función de conjunto de filas en la cláusula FROM de una instrucción SELECT como si fuese un nombre de tabla normal.

[!NOTA]

En SQL Server 2012, solo las palabras individuales se indizan para la búsqueda semánticas; las frases de múltiples palabras (ngrams) no se indizan. Además, las distintas formas de la misma palabra se indizan por separado; por ejemplo, "equipo" y "equipos" se indizan por independientemente.

Para obtener información detallada sobre los parámetros requeridos por la función SEMANTICKEYPHRASETABLE y sobre la tabla de resultados que devuelve, vea semantickeyphrasetable (Transact-SQL).

Nota importanteImportante

Las columnas de destino deben tener habilitada la indización de texto completo y semántica.

[ARRIBA]

Ejemplo 1: Buscar las frases clave principales de un documento determinado

En el ejemplo siguiente se recupera las 10 frases clave principales del documento especificado por la variable @DocumentId en la columna Document de la tabla Production.Document de la base de datos de ejemplo AdventureWorks. La variable @DocumentId representa un valor de la columna de clave del índice de texto completo.

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

La función SEMANTICKEYPHRASETABLE recupera estos resultados eficazmente mediante una búsqueda de índice en vez de un recorrido de tabla.

[ARRIBA]

Ejemplo 2: Buscar los documentos principales que contienen una frase clave específica

En el ejemplo siguiente se recuperan los 25 primeros documentos que contengan la palabra clave “Bracket” de la columna Document de la tabla Production.Document de la base de datos de ejemplo 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

[ARRIBA]