首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 數據庫知識 >  >> SQL Server 資料庫 >> 關於SqlServer

SQL Server 2000 全文檢索功能完整建置與查詢指南

     編輯:關於SqlServer

全文檢索功能概述

Microsoft SQL Server 憑藉簡單易用的特性,在中低階企業應用中佔有廣泛市場。SQL Server 7.0 以前缺乏全文檢索功能,無法提供文本內容搜尋服務。自 SQL Server 7.0 起,至 SQL Server 2000 正式具備完整的全文檢索能力,支援對 char、varchar、text、ntext、nchar、nvarchar 等資料類型欄位中的文字資料進行高效檢索。

建立全文索引的六大步驟

為支援全文索引操作,SQL Server 7.0 新增多項預存程序與 Transact-SQL 陳述式。具體建立步驟如下:

  1. 啟用資料庫全文處理功能 (sp_fulltext_database)
  2. 建立全文檢索目錄 (sp_fulltext_catalog)
  3. 在目錄中註冊需全文索引的資料表 (sp_fulltext_table)
  4. 指定需全文檢索的欄位名稱 (sp_fulltext_column)
  5. 為資料表建立全文索引 (sp_fulltext_table 啟用)
  6. 填充全文檢索目錄 (sp_fulltext_catalog 開始填充)

實作範例:對 Book 表的 Title 與 Notes 欄位建立全文索引

USE test
GO
-- 啟用全文索引支援,啟動 SQL Server 全文搜尋服務
EXEC sp_fulltext_database 'enable'
GO
-- 建立全文檢索目錄 ft_test
EXEC sp_fulltext_catalog 'ft_test', 'create'
GO
-- 為 Title 欄位建立全文索引資料元,pk_title 為 Book 表主鍵建立的唯一索引 (必要參數)
EXEC sp_fulltext_table 'book', 'create', 'ft_test', 'pk_title'
GO
-- 設定全文索引欄位
EXEC sp_fulltext_column 'book', 'title', 'add'
EXEC sp_fulltext_column 'book', 'notes', 'add'
GO
-- 啟用全文索引
EXEC sp_fulltext_table 'book', 'activate'
GO
-- 填充全文索引目錄
EXEC sp_fulltext_catalog 'ft_test', 'start_full'
GO

全文檢索查詢語法:CONTAINS 與 FREETEXT

CONTAINS 謂詞

功能:在資料表的所有欄位或指定欄位中搜尋單字、片語、前綴詞、近似詞、衍生詞或加權詞。

語法格式:

CONTAINS ( { column | * } , '' )
  • column:搜尋欄位,使用 * 表示搜尋所有全文索引欄位。
  • contains_search_condition:包含 SIMPLE_TERM、PREFIX_TERM、PROXIMITY_TERM、GENERATION_TERM、WEIGHTED_TERM 等,可結合 AND、OR、AND NOT 邏輯運算子。

範例:搜尋 Title 或 Notes 含 "database" 或 "computer" 的記錄:

SELECT title, notes
FROM book
WHERE CONTAINS(title, 'database') OR CONTAINS(notes, 'database')
   OR CONTAINS(title, 'computer') OR CONTAINS(notes, 'computer')

FREETEXT 謂詞

功能:以自由文本格式搜尋字串,回傳符合語意的資料列,稱為自由式全文查詢。

語法格式:

FREETEXT ( { column | * } , 'freetext_string' )

範例:搜尋包含 "Successful Life" 字串的資料列:

SELECT title, notes
FROM book
WHERE FREETEXT(*, 'Successful Life')
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved