是個(gè)謂詞,用于搜索含有基于字符的數(shù)據(jù)類型的列,其中的值符合在搜索條件中所指定文本的含義,但不符合表達(dá)方式。使用 FREETEXT 時(shí),全文查詢引擎內(nèi)部將 freetext_string 拆分為若干個(gè)搜索詞,并賦予每個(gè)詞以不同的加權(quán),然后查找匹配。
FREETEXT ( { column | * } , 'freetext_string' )
column
已經(jīng)注冊全文檢索的特定列的名稱。具有字符串?dāng)?shù)據(jù)類型的列是可進(jìn)行全文檢索的有效的列。
*
指定所有已注冊用于全文檢索的列均用于搜索給定的 freetext_string。
freetext_string
要在指定的 column 中進(jìn)行搜索的文本??梢暂斎肴魏挝谋荆▎卧~、短語或句子。所輸入的文本與語法無關(guān)。
使用 FREETEXT 的全文查詢沒有使用 CONTAINS 的全文查詢精度高。Microsoft® SQL Server™ 全文檢索引擎識(shí)別重要的字詞和短語。保留關(guān)鍵字或通配符字符都不具有特殊含義,而它們指定在 CONTAINS 謂詞的 <contains_search_condition> 參數(shù)中時(shí)則通常具有含義。
當(dāng)兼容性級別小于 70 時(shí),F(xiàn)REETEXT 不被識(shí)別為關(guān)鍵字。有關(guān)更多信息,請參見 sp_dbcmptlevel。
下例搜索產(chǎn)品描述中含有與 bread、candy、dry 和 meat 相關(guān)的詞語的所有產(chǎn)品類別,如 breads、candies、dried 和 meats 等。
USE Northwind
GO
SELECT CategoryName
FROM Categories
WHERE FREETEXT (Description, 'sweetest candy bread and dry meat' )
GO
下例使用變量而不是特定的搜索術(shù)語。
USE pubs相關(guān)文章
GO
DECLARE @SearchWord varchar(30)
SET @SearchWord ='Moon'
SELECT pr_info FROM pub_info WHERE FREETEXT(pr_info, @SearchWord)