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

          常用鏈接

          留言簿(5)

          隨筆分類

          隨筆檔案

          搜索

          •  

          積分與排名

          • 積分 - 174131
          • 排名 - 340

          最新評(píng)論

          閱讀排行榜

          評(píng)論排行榜

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

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

          假定想在 Northwind 數(shù)據(jù)庫(kù)內(nèi)進(jìn)行搜索,以查找短語"bean curd"。如果使用 CONTAINS 謂詞,這就是一個(gè)很簡(jiǎn)單的查詢。

          				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 謂詞使用的函數(shù)表示法中,第一個(gè)參數(shù)是要檢索的列的名稱,第二個(gè)參數(shù)是全文檢索條件。檢索條件(此例中是"bean curd")可以很復(fù)雜,由一個(gè)或多個(gè)條件組成,這將在后面介紹。

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

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

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

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

            例如,檢索單詞 drive 的變形。如果表中的不同行包含單詞 drive、drives、drove、driving 和 driven,那么所有這些都將包含在結(jié)果集中,因?yàn)槠渲忻恳粋€(gè)都可以從單詞 drive 變形而來。

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

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

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

            例如,查找一個(gè)賦權(quán)值比另一個(gè)單詞高的單詞。這將返回排序的查詢結(jié)果。

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

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

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

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

          posted on 2009-02-21 16:01 JasonChou 閱讀(6661) 評(píng)論(0)  編輯  收藏 所屬分類: database
          主站蜘蛛池模板: 阳朔县| 宝清县| 白山市| 纳雍县| 青阳县| 房产| 鞍山市| 万源市| 衡水市| 启东市| 大厂| 桐乡市| 桦南县| 八宿县| 麟游县| 酒泉市| 民勤县| 通江县| 蒙城县| 景谷| 阿克陶县| 永靖县| 商河县| 肥西县| 密云县| 江川县| 朝阳县| 驻马店市| 房山区| 赤壁市| 财经| 莒南县| 内江市| 论坛| 舟山市| 长寿区| 巴青县| 聂拉木县| 建湖县| 石首市| 新乡市|