Búsqueda de texto completo (SQL Server)

SQL Server 2008 proporciona la funcionalidad necesaria para que las aplicaciones y usuarios emitan consultas de texto completo contra los datos basados en caracteres de las tablas de SQL Server. Para que las consultas de texto completo se puedan ejecutar en una tabla determinada, el administrador de bases de datos debe crear un índice de texto completo en la tabla. El índice de texto completo incluye una o varias columnas de caracteres en la tabla. Estas columnas sólo pueden tener alguno de los siguientes tipos de datos: char, varchar, nchar, nvarchar, text, ntext, image, xml, varbinary o varbinary(max). Cada índice de texto completo indiza una o varias columnas de la tabla base y cada columna puede tener un idioma concreto. A partir de SQL Server 2008, la búsqueda de texto completo admite más de 50 idiomas diversos, como inglés, español, chino, japonés, árabe, bengalí e hindi. Para obtener una lista completa de los idiomas de texto completo admitidos, vea sys.fulltext_languages (Transact-SQL).

Para cada idioma admitido, SQL Server proporciona componentes lingüísticos específicos del idioma, incluido un separador de palabras y un lematizador, y un archivo de diccionario de sinónimos vacío. Para cada idioma de texto completo, SQL Server proporciona un archivo en el que también puede definir, si lo desea, sinónimos específicos del idioma para extender el ámbito de las consultas de búsqueda (un archivo de diccionario de sinónimos). Además, a partir de SQL Server 2008, se proporciona una lista de palabras irrelevantes del sistema. Para admitir escenarios empresariales o de idioma concreto, puede modificar la lista de palabras irrelevantes del sistema agregando y quitando estas palabras, y puede crear listas de palabras irrelevantes adicionales según sea necesario.

Para escribir las consultas de texto completo, SQL Server proporciona un conjunto de predicados de texto completo (CONTAINS y FREETEXT) y funciones de valor de conjunto de filas (CONTAINSTABLE y FREETEXTTABLE). Con ellas, las aplicaciones y los usuarios pueden realizar diversos tipos de búsquedas de texto completo, como buscar en una palabra o frase única (y clasificar el conjunto de resultados si se desea), buscar en una palabra o frase cerca de otra palabra o frase, o buscar en sinónimos formas de una palabra concreta.

[!NOTA]

La búsqueda de texto completo es un componente opcional del motor de base de datos de SQL Server. Para obtener más información, vea Instalar SQL Server 2008.

En esta sección