Es el texto que se va a buscar en column_name. Se puede escribir cualquier texto, incluidas palabras, frases y oraciones. Se generarán coincidencias si se encuentra algún término o las formas de algún término en el índice de texto.
freetext_string es de tipo nvarchar. Se realiza una conversión implícita cuando se usa otro tipo de datos de carácter como entrada. En el siguiente ejemplo, la variable @SearchWord, definida como una variable de tipo varchar(30), provoca una conversión implícita en el predicado FREETEXT.
USE AdventureWorks;
GO
DECLARE @SearchWord varchar(30)
SET @SearchWord ='performance'
SELECT Description
FROM Production.ProductDescription
WHERE FREETEXT(Description, @SearchWord);
Como el "examen de parámetros" no funciona con la conversión, use nvarchar para obtener mejor rendimiento. En el ejemplo, declare @SearchWord como nvarchar(30).
USE AdventureWorks;
GO
DECLARE @SearchWord nvarchar(30)
SET @SearchWord = N'performance'
SELECT Description
FROM Production.ProductDescription
WHERE FREETEXT(Description, @SearchWord);
También puede usar la sugerencia de consulta OPTIMIZE FOR para los casos en los que se genera un plan subóptimo.
A diferencia de lo que sucede en la condición de búsqueda CONTAINS, donde AND es una palabra clave, cuando la palabra "and" se utiliza en freetext_string, se considera una palabra vacía y no se tiene en cuenta.
No se permite el uso de WEIGHT, FORMSOF, caracteres comodín, NEAR y otros elementos sintácticos. freetext_string se separa en palabras, de las que se extraen las desinencias y se pasan por el diccionario de sinónimos. Si freetext_string se incluye entre comillas dobles, se realiza una búsqueda de frases coincidentes, por lo que no se extraen las desinencias ni se utiliza el diccionario de sinónimos.