Products) > 全文索引資料表 > 在資料表上定義全文索引。ProductName, QuantityPerUnit)。proCatalog),暫不設定填充排程。proCatalog > 啟動完整填充。-- ProductName 同時包含以 c 開頭與以 b 開頭的字詞
SELECT * FROM Products
WHERE CONTAINS(ProductName, '"c*" AND "b*"');
-- 多欄位搜尋
SELECT * FROM Products
WHERE CONTAINS((ProductName, QuantityPerUnit), 'chai');
-- ProductName 包含 chai、chang、tofu 任一字詞 (字幹擴展)
SELECT * FROM Products
WHERE FREETEXT(ProductName, 'chai chang tofu');
-- 回傳符合條件的鍵值與等級 (RANK)
SELECT P.*, K.RANK
FROM Products P
JOIN CONTAINSTABLE(Products, ProductName, 'ISABOUT("chai" WEIGHT(0.8), "chang" WEIGHT(0.2))') K
ON P.ProductID = K.[KEY]
ORDER BY K.RANK DESC;
| 功能 | 預存程序 |
|---|---|
| 啟用資料庫全文 | sp_fulltext_database 'enable' |
| 建立全文目錄 | sp_fulltext_catalog 'proCatalog', 'create' |
| 註冊資料表 | sp_fulltext_table 'Products', 'create', 'proCatalog', 'PK_Products' |
| 指定欄位 | sp_fulltext_column 'Products', 'ProductName', 'add' |
| 啟動填充 | sp_fulltext_catalog 'proCatalog', 'start_full' |
char/varchar/nvarchar/text/image (含 Office/HTML 文件,需指定型別欄位)。resource_usage 控制系統資源佔用。SQL Server Personal Edition 不包含 Microsoft Search Service,無法使用全文檢索;但用戶端連接 Standard/Enterprise Edition 可正常使用。