Introducción a la búsqueda de texto

La búsqueda de texto permite la indización rápida y flexible en consultas basadas en palabras clave de datos de texto almacenados en una base de datos de Microsoft SQL Server. A diferencia del predicado LIKE, que sólo funciona en patrones de caracteres, las consultas de texto realizan búsquedas lingüísticas en estos datos y operan en palabras y frases basándose en las reglas de un idioma en concreto.

En Microsoft SQL Server 2005, la búsqueda de texto ofrece funcionalidad de búsqueda empresarial. Se han realizado importantes mejoras en el rendimiento, la facilidad de uso y la funcionalidad, que proporcionan funciones de búsqueda excepcionales para aplicaciones de cualquier tamaño.

La mejor forma de comprobar la ventaja de rendimiento que aporta el uso de la búsqueda de texto es realizar una consulta en una gran cantidad de datos de texto sin estructura. Una consulta LIKE realizada en millones de filas de datos de texto puede tardar minutos en devolver resultados, mientras que una consulta de texto en los mismos datos puede tardar únicamente segundos, en función del número de filas que se devuelvan.

Puede crear índices de texto en columnas que contengan datos char, varchar y nvarchar. También es posible crear índices de texto en columnas que contengan datos binarios con formato, como documentos de Microsoft Word, almacenados en una columna varbinary(max) o image. No es posible utilizar el predicado LIKE para consultar datos binarios con formato.

Para crear un índice de texto en una tabla, ésta debe tener una única columna que no contenga valores NULL. Tomemos como ejemplo un índice de texto de la tabla Document en Adventure Works cuya columna DocumentID es la columna de clave principal. Un índice de texto indica que la palabra "instructions" se encuentra en la palabra número 24 y en la palabra 44 de la columna DocumentSummary para la fila asociada con el valor de DocumentID igual a 3. Esta estructura de índices permite realizar una búsqueda eficaz de todos los elementos que contengan palabras indizadas y operaciones de búsqueda avanzada, como búsquedas de frases y búsquedas de proximidad. Para obtener más información, vea Tabla Document (AdventureWorks).

Cuando se procesa una consulta de texto, el motor de búsqueda devuelve a SQL Server los valores de clave de las filas que coinciden con los criterios de búsqueda. Si desea usar una consulta de texto para buscar los documentos que contengan la palabra "instructions", los valores 3, 4, 6, 7 y 8 de DocumentID se obtienen del índice de texto. SQL Server usa estas claves para devolver las filas coincidentes.

Vea también

Conceptos

Aspectos básicos de la búsqueda de texto

Otros recursos

Mejoras de la búsqueda de texto
LIKE (Transact-SQL)
Conceptos de la búsqueda de texto

Ayuda e información

Obtener ayuda sobre SQL Server 2005