CONTAINS 述詞

CONTAINS 述詞是 WHERE 子句的一部分,並支援在文字資料行中搜尋單字和片語。 CONTAINS 述詞具有比對單字、比對單字變化形式、使用萬用字元搜尋,以及使用鄰近性搜尋的功能。 您也可以在 CONTAINS 述詞中套用權數,以設定找到搜尋字詞的資料行重要性。 CONTAINS 述詞較適合完全相符專案,與 FREETEXT 述詞相反,更適合用來尋找包含整個資料行之搜尋單字組合的檔。 搜尋不會區分大小寫。

以下是 CONTAINS 述詞的基本語法:

...CONTAINS(["<fulltext_column>",]'<contains_condition>'[,<LCID>])...

fulltext_column參考是選擇性的。 您可以使用它,將搜尋限制為測試 CONTAINS 述詞的單一資料行或資料行群組。 當全文檢索資料行指定為 「ALL」 或 「*」時,會搜尋所有已編制索引的文字屬性。 雖然資料行不一定是 text 屬性,但如果資料行是其他資料類型,則結果可能沒有意義。 資料行名稱可以是一般或分隔 的識別碼,而且您必須以逗號將它與條件分隔。 如果未指定全文檢索資料行,則會使用 System.Search.Contents 資料行,這是檔的本文。

述詞的 LCID 部分會指定搜尋地區設定。 這會指示搜尋引擎針對搜尋查詢使用適當的斷詞工具和變化形式。 若要指定地區設定,請提供 Windows 標準語言代碼識別碼 (LCID) 。 例如,1033 是美國英文的 LCID。 將 LCID 放置為 CONTAINS 子句括弧內的最後一個專案。 如需搜尋和語言的重要資訊,請參閱 使用當地語系化搜尋

注意

預設搜尋地區設定是系統預設地區設定。

contains_condition部分必須以單引號括住單字或片語的雙引號,並且包含一或多個使用邏輯運算子 ANDOR結合的內容搜尋字詞。 您可以使用AND運算子之後的選擇性一元運算子NOT來否定內容搜尋字詞的邏輯值。

注意

NOT運算子只能在AND之後發生。 如果只有一個比對條件,或在OR運算子之後,您就無法使用NOT運算子。

您可以使用括弧來分組和巢狀內容搜尋字詞。 下表描述邏輯運算子的優先順序。

順序 (優先順序) 邏輯運算子
第一個 (最高) NOT
Second AND
第三個 (最低) OR

相同類型的邏輯運算子是關聯的,而且沒有指定的計算順序。 例如, (A AND B) AND (C AND D) 可以計算 (B AND C) AND ( A AND D) ,且邏輯結果沒有任何變更。

下表描述內容搜尋字詞的類型。

類型 描述 範例
Word 不含空格或其他標點符號的單一單字。 不需要雙引號。
...WHERE CONTAINS ('computer')
片語 多個單字或包含的空格。

...WHERE CONTAINS ('「computer software」') 

或者,若要使用雙引號:

... WHERE CONTAINS ('"computer ""science"" "')

萬用字元 將星號 (*) 新增至結尾的單字或片語。 如需詳細資訊,請參閱 CONTAINS 述詞中使用萬用字元

...WHERE CONTAINS ('「compu*」') 

Matches "computer", "computers", "computation", and "compulsory"

全文檢索資料行 要符合其餘查詢的屬性資料行名稱。
...WHERE CONTAINS (System.Author,'"James" OR "Juan"')
Boolean 使用布林運算子 ANDORNOT結合的字組、片語和萬用字元字串。 以雙引號括住布林詞彙。

...WHERE CONTAINS ('「computer monitor」 AND 「software program」 AND 「install component」') 

...WHERE CONTAINS (' 「computer」 and 「software」 and 「install」 ' )

...WHERE CONTAINS ('"computer software install"')

Near 以 NEAR 函數分隔的字組、片語或萬用字元。 如需詳細資訊,請參閱 NEAR Term
...WHERE CONTAINS
('"computer" NEAR "software"')
FormsOf 比對該單字的字組和變化版本。 如需詳細資訊,請參閱 FORMSOF 字詞

...WHERE CONTAINS ('FORMSOF (INFLECTIONAL, 「happy」) ) 

Matches "happy", "happier", "happiest", "happily", and so on.

IsAbout 結合多個單字、片語或萬用字元搜尋字詞的比對結果。 每個搜尋字詞都可以選擇性地加權。 您可以選擇性地指定排名計算方法,此方法結合了加權和檔相符的專案數目。 如需詳細資訊,請參閱 ISABOUT 字詞
...WHERE CONTAINS
('ISABOUT ( "computer" WEIGHT (0.75) ,
    "software" WEIGHT (0.25) ,
    "development" WEIGHT (0.255)
 ) RANKMETHOD INNER PRODUCT
')

本節包含下列主題:

參考

WHERE 子句

概念

全文檢索述詞

非全文檢索述詞