SQLSERVER全文檢索目錄全文索引的使用方法和區別講解_MsSql

來源:互聯網
上載者:User

先介紹一下SQLSERVER中的儲存類對象,哈哈,先介紹一下概念嘛,讓新手老手都有一個認知
SQLSERVER Management Studio將【全文檢索目錄】、【分區函數】以及【資料分割配置】節點納入其【物件總管】的【儲存】節點之中,如下圖所示:


全文檢索目錄

資料庫【儲存】|【全文檢索目錄】節點是用於儲存和管理【全文索引】的節點。全文檢索目錄通常是由同一資料庫中的零個或多個資料表的全文索引構成的。
需要注意的是,只能為每個資料表建立一個全文索引。因此,一旦在某個資料表上建立了全文索引,那麼該資料表將只能隸屬於一個全文檢索目錄。換言之,

一個資料庫可以包含一個或多個全文檢索目錄,一個全文檢索目錄可以包含一個或多個全文索引,但一個資料表只能隸屬於一個資料庫全文檢索目錄和全文索引。

在SQLSERVER2005中使用全文索引的主要步驟如下

(1)首先需要建立全文檢索目錄。
(2)然後將需要建立全文索引的資料表中的資料填充到全文檢索目錄中。這一過程也被稱為填充全文索引。
(3)完成上述兩步之後,即可開始使用全文索引功能。

建立全文檢索目錄的方法非常簡單。通過SSMS以及T-SQL都可以實現建立全文檢索目錄的功能。

最後說一下全文索引的優缺點和注意事項:

(1)全文索引可對char、varchar、nchar、nvarchar、text、ntext、image、xml、varbinary 或 varbinary(max) 類型欄位進行檢索,是解決海量資料模糊查詢的好辦法。
(2)一個表只能建立一個全文索引(但可以對多個欄位)。
(3)與like的比較 MSDN解釋

與全文檢索搜尋不同,LIKE Transact-SQL 謂詞僅對字元模式( char、varchar、nchar、nvarchar)有效。另外,不能使用 LIKE 謂詞來查詢格式化的位元據。此外,對大量非結構化的文本資料執行 LIKE 查詢要比對相同資料執行同樣的全文檢索查詢慢得多。對數百萬行文本資料進行的 LIKE 查詢可能需要幾分鐘的時間才能返回結果;而對於同樣的資料,全文檢索查詢只需要幾秒甚至更少的時間,具體取決於返回的行數及其大小。另一個考慮因素是 LIKE 僅對整個表執行簡單模式掃描。相反,全文檢索查詢可識別語言,它在索引和查詢時應用特定的轉換,例如,篩選停用字詞並進行同義字和變形擴充。這些轉換可協助全文檢索查詢改進其撤回以及結果的最終排名

最最後,講一下全文索引的用法:

SQL Server 2000和SQLSERVER2005提供的全文檢索索引語句主要有CONTAINS和FREETEXT

(1)CONTAINS語句的功能是在表的所有列或指定列中搜尋:一個字或短語;一個字或短語的首碼;與一個字相近的另一個字;一個字的派生字;一個重複出現的字。
(2)FREETEXT語句的功能是在一個表的所有列或指定列中搜尋一個自由文字格式設定的字串,並返回與該字串匹配的資料行。所以,FREETEXT語句所執行的功能又稱做自由式全文檢索查詢。

T-SQL語句

複製代碼 代碼如下:

USE pratice
SELECT *  FROM  dbo.test WHERE CONTAINS(d,'基數行')

pratice是我的一個測試資料庫,d是test表的其中一個欄位,以上T-SQL語句的意思是尋找d欄位裡包含字串"基數行"的記錄

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.