Configurar y administrar palabras irrelevantes y listas de palabras irrelevantes para la búsqueda de texto completo

Se aplica a:SQL ServerAzure SQL Database

Para evitar que un índice de texto completo se sobredimensione, SQL Server tiene un mecanismo que descarta cadenas que normalmente no ayudan a la búsqueda. Estas cadenas descartadas se denominan palabras irrelevantes. Durante la creación de índices, el motor de texto completo omite las palabras irrelevantes del índice de texto completo. Eso significa que las consultas de texto completo no buscarán las palabras irrelevantes.

Palabras irrelevantes. Una palabra irrelevante puede ser una palabra con significado en un idioma específico. Por ejemplo, en inglés, las palabras como "a", "and", "is" y "the" se omiten en el índice de texto completo porque se ha determinado que no son útiles en una búsqueda. Una palabra irrelevante también puede ser un token que carezca de significado lingüístico.

Listas de palabras irrelevantes. Las palabras irrelevantes se administran en bases de datos mediante objetos denominados listas de palabras irrelevantes. Una lista de palabras irrelevantes es una lista de palabras que, cuando se asocia a un índice de texto completo, se aplica a las consultas de texto completo en ese índice.

Utilizar una listas de palabras irrelevantes existente

Puede utilizar una lista de palabras irrelevantes existente de las maneras siguientes:

  • Usar la lista de palabras irrelevantes proporcionada por el sistema en la base de datos. SQL Server incluye una lista de palabras irrelevantes del sistema que contiene las palabras irrelevantes más usadas para cada idioma admitido, es decir, para cada idioma asociado a separadores de palabras dados de forma predeterminada. Puede copiar la lista de palabras irrelevantes del sistema y personalizar la copia agregando y quitando palabras irrelevantes.

    La lista de palabras irrelevantes del sistema se instala en la base de datos Resource .

  • Use una lista de palabras irrelevantes personalizada de otra base de datos en la instancia del servidor actual y luego agregue o quite palabras irrelevantes cuando sea necesario.

Crear una nueva lista de palabras irrelevantes

Crear una nueva lista de palabras irrelevantes con Transact-SQL

Use CREATE FULLTEXT STOPLIST.

Crear una nueva lista de palabras irrelevantes con Management Studio

  1. En el Explorador de objetos, expanda el servidor.

  2. Expanda Bases de datosy luego la base de datos en la que quiere crear la lista de palabras irrelevantes de texto completo.

  3. Expanda Almacenamientoy luego haga clic con el botón derecho en Lista de palabras irrelevantes de texto completo.

  4. Seleccione Nueva lista de palabras irrelevantes de texto completo.

  5. Escriba el nombre de la nueva lista de palabras irrelevantes.

  6. Opcionalmente, especifique a otra persona como propietario de la lista de palabras irrelevantes.

  7. Seleccione una de las opciones de creación de lista de palabras irrelevantes siguientes:

    • Crear una lista de palabras irrelevantes vacía

    • Crear a partir de la lista de palabras irrelevantes del sistema

    • Crear a partir de una lista de palabras irrelevantes de texto completo existente

    Para obtener más información, consulte Nueva lista de palabras irrelevantes de texto completo (página General).

  8. Seleccione Aceptar.

Usar una lista de palabras irrelevantes en consultas de texto completo

Para usar una lista de palabras irrelevantes en consultas, es necesario asociarla a un índice de texto completo. Puede asociar una lista de palabras irrelevantes a un índice de texto completo en el momento de crear el índice, o puede modificar el índice más adelante y agregarle una lista de palabras irrelevantes.

Crear un índice de texto completo y asociarle una lista de palabras irrelevantes

Use CREATE FULLTEXT INDEX (Transact-SQL).

Asociar o desasociar una lista de palabras irrelevantes y un índice de texto completo existente

Use ALTER FULLTEXT INDEX (Transact-SQL).

Cambiar las palabras irrelevantes de una lista de palabras irrelevantes

Agregue o quite palabras irrelevantes de una lista de palabras irrelevantes con Transact-SQL

Use ALTER FULLTEXT STOPLIST (Transact-SQL).

Agregue o quite palabras irrelevantes de una lista de palabras irrelevantes con Management Studio

  1. En el Explorador de objetos, expanda el servidor.

  2. Expanda Bases de datosy, a continuación, expanda la base de datos.

  3. Expanda Almacenamientoy, a continuación, seleccione Listas de palabras irrelevantes de texto completo.

  4. Haga clic con el botón derecho en la lista de palabras irrelevantes cuyas propiedades quiere cambiar y seleccione Propiedades.

  5. En el cuadro de diálogo Propiedades de lista de palabras irrelevantes de texto completo :

    1. En el cuadro de lista Acción , seleccione una las acciones siguientes: Agregar palabra irrelevante, Eliminar palabra irrelevante, Eliminar todas las palabras irrelevanteso Borrar lista de palabras irrelevantes.

    2. Si el cuadro de texto Palabra irrelevante está habilitado para la acción seleccionada, escriba una única palabra irrelevante. Esta palabra irrelevante debe ser única; es decir, no debe estar todavía en esta lista de palabras irrelevantes para el idioma que seleccione.

    3. Si el cuadro de lista Idioma de texto completo está habilitado para la acción seleccionada, seleccione un idioma.

  6. Seleccione Aceptar.

Administrar listas de palabras irrelevantes y su uso

Ver todas las palabras irrelevantes de una lista de palabras irrelevantes

Use sys.fulltext_stopwords (Transact-SQL).

Obtener información sobre todas las listas de palabras irrelevantes de la base de datos actual

Use sys.fulltext_stoplists (Transact-SQL) y sys.fulltext_stopwords (Transact-SQL).

Ver el resultado de la tokenización de una combinación entre un separador de palabras, un diccionario de sinónimos y una lista de palabras irrelevantes

Use sys.dm_fts_parser (Transact-SQL).

Suprimir un mensaje de error si las palabras irrelevantes causan error en una operación booleana en una consulta de texto completo

Utilice la opción de configuración del servidor transform noise words.

Más información sobre la posición de la palabra irrelevante

Aunque omite la inclusión de palabras irrelevantes, el índice de texto completo tiene en cuenta la posición de las mismas. Tomemos como ejemplo la frase en inglés "Instructions are applicable to these Adventure Works Cycles models ". La siguiente tabla muestra la posición de las palabras en la frase:

Word Puesto
Instrucciones 1
are 2
applicable 3
para 4
these 5
Adventure 6
Works 7
Cycles 8
modelos 9

Las palabras irrelevantes "are", "to" y "these" que se encuentran en las posiciones 2, 4 y 5 quedan excluidas del índice de texto completo. Sin embargo, se mantiene la información de su posición y, de este modo, no se ve afectada la posición de las demás palabras de la frase.

Actualizar las palabras irrelevantes de SQL Server 2005

Las palabras irrelevantes de SQL Server 2005 (9.x) se han reemplazado por palabras irrelevantes. Cuando se actualiza una base de datos desde SQL Server 2005 (9.x), los archivos de palabra irrelevante ya no se usan. Sin embargo, los archivos de palabras irrelevantes están almacenados en la carpeta FTDATA\ FTNoiseThesaurusBak y se pueden usar posteriormente al actualizar o compilar las listas de palabras irrelevantes correspondientes. Para obtener información sobre cómo actualizar los archivos de palabras irrelevantes a listas de palabras irrelevantes, vea Actualizar la búsqueda de texto completo.