隨筆 - 59  文章 - 70  trackbacks - 0
          <2009年2月>
          25262728293031
          1234567
          891011121314
          15161718192021
          22232425262728
          1234567

          常用鏈接

          留言簿(5)

          隨筆分類

          隨筆檔案

          搜索

          •  

          積分與排名

          • 積分 - 173678
          • 排名 - 340

          最新評論

          閱讀排行榜

          評論排行榜

          可以使用 CONTAINS 謂詞在數據庫中檢索特定的短語。當然,這樣的查詢可以使用 LIKE 謂詞編寫。但是,CONTAINS 的許多形式所提供的文本查詢能力比 LIKE 要強。此外,與使用 LIKE 謂詞不同的是,CONTAINS 檢索總是區分大小寫。

          說明??對于那些區分大小寫的語言(多數都基于拉丁語),全文檢索查詢以區分大小寫的方式執行。但是,在日語中,有許多表示語音的拼字法,其中拼字規范化這一概念與不區分大小寫類似,如 kana = 不區分。這種拼字規范化不被支持。

          假定想在 Northwind 數據庫內進行搜索,以查找短語"bean curd"。如果使用 CONTAINS 謂詞,這就是一個很簡單的查詢。

          				USE Northwind 
          GO
          SELECT Description
          FROM Categories
          WHERE Description LIKE '%bean curd%'
          GO
          
          		

          或者,使用 CONTAINS:

          				USE Northwind
          GO
          SELECT Description
          FROM Categories
          WHERE CONTAINS(Description, ' "bean curd" ')
          GO
          
          		

          CONTAINS 謂詞使用的函數表示法中,第一個參數是要檢索的列的名稱,第二個參數是全文檢索條件。檢索條件(此例中是"bean curd")可以很復雜,由一個或多個條件組成,這將在后面介紹。

          CONTAINS 謂詞支持使用復雜的語法在基于字符的列中檢索:

          • 一個或多個特定的單詞和/或短語(簡單條件)。

            一個單詞是一個或多個字符,中間沒有空格或標點。有效的短語可以由帶空格的多個單詞組成,單詞之間可以有標點也可以沒有標點。例如,croissant 是一個單詞,而 café au lait 是一個短語。這樣的單詞和短語稱為簡單條件。

          • 特定單詞的變形(派生條件)。

            例如,檢索單詞 drive 的變形。如果表中的不同行包含單詞 drive、drives、drove、driving 和 driven,那么所有這些都將包含在結果集中,因為其中每一個都可以從單詞 drive 變形而來。

          • 以指定文本(前綴條件)打頭的單詞或短語。

            如果是短語,則該短語內的每個單詞都被看作是一個前綴。例如,條件 auto tran* 與 automatic transmission 和 automobile transducer 匹配。

          • 使用加權值的單詞或短語(加權條件)。

            例如,查找一個賦權值比另一個單詞高的單詞。這將返回排序的查詢結果。

          • 與另一個單詞或短語相近的單詞或短語(鄰近條件)。

            例如,查找一些行,這些行中單詞 ice 與 hockey 相鄰,或者短語 ice skating 與 ice hockey 相鄰。

          CONTAINS 謂詞可以用 AND 和 OR 將這些條件中的幾個結合起來,例如,要查找同一個啟用全文的數據庫列中所有有 latte 和 New York-style bagel 的行。不僅如此,還可以使用 AND NOT 對條件取反,例如 bagel and not cream cheese。

          在使用 CONTAINS 時,記住 SQL Server 將從檢索條件中去掉干擾詞。干擾詞是象 a、and、is 或 the 這樣的詞,這些詞可能經常出現,但是在檢索特定文本時沒有真正的幫助。

          posted on 2009-02-21 16:01 JasonChou 閱讀(6655) 評論(0)  編輯  收藏 所屬分類: database
          主站蜘蛛池模板: 利津县| 丰县| 金阳县| 原阳县| 星座| 阜南县| 来凤县| 伊川县| 台前县| 全椒县| 彩票| 拜城县| 榆林市| 乡城县| 象山县| 华阴市| 防城港市| 东山县| 广安市| 望江县| 亚东县| 凌海市| 营山县| 唐山市| 桑植县| 聂荣县| 巴林左旗| 安远县| 随州市| 潮安县| 北川| 峨山| 灵寿县| 馆陶县| 乌苏市| 永靖县| 察雅县| 利川市| 枣强县| 容城县| 应城市|