為下述列返回含有零行、一行或多行的表:這些列含有基于字符的數(shù)據(jù)類(lèi)型,其中的值符合指定的 freetext_string 中文本的含義,但不符合確切的表達(dá)方式。FREETEXTTABLE 可以在 SELECT 語(yǔ)句的 FROM 子句中象常規(guī)表名稱(chēng)一樣進(jìn)行引用。
使用 FREETEXTTABLE 的查詢(xún)指定 freetext 類(lèi)型的全文查詢(xún),這些查詢(xún)?yōu)槊啃蟹祷匾粋€(gè)關(guān)聯(lián)等級(jí)值 (RANK)。
FREETEXTTABLE ( table , { column | * } , 'freetext_string' [ , top_n_by_rank ] )
table
標(biāo)記為用于全文查詢(xún)的表的名稱(chēng)。table 可以是一部分、兩部分或三部分組成的數(shù)據(jù)庫(kù)對(duì)象名稱(chēng)。有關(guān)更多信息,請(qǐng)參見(jiàn) Transact-SQL 語(yǔ)法規(guī)則。table 不能指定服務(wù)器名稱(chēng),也不能用于對(duì)鏈接服務(wù)器的查詢(xún)。
column
駐留在 table 中、要搜索的列的名稱(chēng)。具有字符串?dāng)?shù)據(jù)類(lèi)型的列是可進(jìn)行全文檢索的有效的列。
*
指定所有已注冊(cè)用于全文檢索的列均用于搜索給定的 freetext_string。
freetext_string
要在指定的 column 中搜索的文本。不能使用變量。
top_n_by_rank
如果指定整型值 n,F(xiàn)REETEXTTABLE 僅返回最前面的 n 個(gè)匹配項(xiàng),并按等級(jí)排序。
FREETEXTTABLE 使用與 FREETEXT 謂詞相同的搜索條件。
同 CONTAINSTABLE 一樣,返回的表包含名為 KEY 和 RANK 的列,在查詢(xún)中引用這些列以獲得適當(dāng)行并使用行等級(jí)值。
如果兼容級(jí)別小于 70,則 FREETEXTTABLE 無(wú)法被識(shí)別為關(guān)鍵字。有關(guān)更多信息,請(qǐng)參見(jiàn) sp_dbcmptlevel。
FREETEXTTABLE 只能由對(duì)指定表或表中所引用的列具有適當(dāng)?shù)?SELECT 特權(quán)的用戶(hù)進(jìn)行喚醒調(diào)用。
此示例返回所有與 sweet、candy、bread、dry 和 meat 相關(guān)的類(lèi)別的名稱(chēng)和描述。
USE Northwind相關(guān)文章
SELECT FT_TBL.CategoryName,
FT_TBL.Description,
KEY_TBL.RANK
FROM Categories AS FT_TBL INNER JOIN
FREETEXTTABLE(Categories, Description,
'sweetest candy bread and dry meat') AS KEY_TBL
ON FT_TBL.CategoryID = KEY_TBL.[KEY]
GO