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