SQL Server全文索引服務(wù)
發(fā)布日期:2022-02-05 08:16 | 文章來源:源碼之家
Contains
AND,OR,NOT
可以在Contains中很方便使用邏輯表達(dá)式
Example:
Selectusernamefrommemberwherecontains(userinfo,'"作家"AND"木匠"')
Selectusernamefrommemberwherecontains(userinfo,'"作家"OR"木匠"')
Selectusernamefrommemberwherecontains(userinfo,'"作家"ANDNOT"木匠"')
NEAR
這是一個在普通的邏輯表達(dá)式中沒有的關(guān)鍵字,意思是很簡單,就是說找到靠近的兩個詞
Example:
SelectContentfromMicrosoftRecordwherecontains(Content,'"比爾·蓋茨"NEAR"保羅·艾倫"')
這就表示要找到全文中包含比爾·蓋茨和保羅·艾倫,并且兩個詞相隔不遠(yuǎn)。
FORMSOFINFLECTIONAL
這個功能可以查找單詞的各種形式,比如過去式、復(fù)數(shù)、動詞形式、名詞形式等??上χ形臎]什么用
Example:
SELECTProductNameFROMProductsWHERECONTAINS(ProductName,'FORMSOF(INFLECTIONAL,dry)')
*
這個功能可以查找單詞的前綴,不過對中文也沒有什么用處
Example:
SELECTProductNameFROMProductsWHERECONTAINS(ProductName,'"dis*"')
ISABOUTWEIGHT
這個功能可以給復(fù)合查詢時不同的條件以不同的權(quán)重,以決定返回的記錄集的順序
SELECTCategoryName,DescriptionFROMCategoriesWHERECONTAINS(Description,'ISABOUTspreadweight(.8),saucesweight(.4),relishesweight(.2))')
權(quán)重的值可以從0.0到1.0
ContainsTable
它的使用方式和Contains基本相同,這里就不再重復(fù)介紹了。要提到的是它返回的是一張供你進(jìn)一步查詢的表,而不是一個查詢條件。
FreeText
如果使用這種方式,那么查詢的時候會使用分詞技術(shù)來實(shí)現(xiàn)模糊查詢,并且過濾掉一些非關(guān)鍵詞,比較類似于Contains中的FORMSOF,可惜對中文也沒有什么支持
Example:
SELECTCategoryNameFROMCategoriesWHEREFREETEXT(Description,'sweetestcandybreadanddrymeat')
FreeTextTable
它和FreeText的差別就跟Contains和ContainsTable的差別一樣。
AND,OR,NOT
可以在Contains中很方便使用邏輯表達(dá)式
Example:
Selectusernamefrommemberwherecontains(userinfo,'"作家"AND"木匠"')
Selectusernamefrommemberwherecontains(userinfo,'"作家"OR"木匠"')
Selectusernamefrommemberwherecontains(userinfo,'"作家"ANDNOT"木匠"')
NEAR
這是一個在普通的邏輯表達(dá)式中沒有的關(guān)鍵字,意思是很簡單,就是說找到靠近的兩個詞
Example:
SelectContentfromMicrosoftRecordwherecontains(Content,'"比爾·蓋茨"NEAR"保羅·艾倫"')
這就表示要找到全文中包含比爾·蓋茨和保羅·艾倫,并且兩個詞相隔不遠(yuǎn)。
FORMSOFINFLECTIONAL
這個功能可以查找單詞的各種形式,比如過去式、復(fù)數(shù)、動詞形式、名詞形式等??上χ形臎]什么用
Example:
SELECTProductNameFROMProductsWHERECONTAINS(ProductName,'FORMSOF(INFLECTIONAL,dry)')
*
這個功能可以查找單詞的前綴,不過對中文也沒有什么用處
Example:
SELECTProductNameFROMProductsWHERECONTAINS(ProductName,'"dis*"')
ISABOUTWEIGHT
這個功能可以給復(fù)合查詢時不同的條件以不同的權(quán)重,以決定返回的記錄集的順序
SELECTCategoryName,DescriptionFROMCategoriesWHERECONTAINS(Description,'ISABOUTspreadweight(.8),saucesweight(.4),relishesweight(.2))')
權(quán)重的值可以從0.0到1.0
ContainsTable
它的使用方式和Contains基本相同,這里就不再重復(fù)介紹了。要提到的是它返回的是一張供你進(jìn)一步查詢的表,而不是一個查詢條件。
FreeText
如果使用這種方式,那么查詢的時候會使用分詞技術(shù)來實(shí)現(xiàn)模糊查詢,并且過濾掉一些非關(guān)鍵詞,比較類似于Contains中的FORMSOF,可惜對中文也沒有什么支持
Example:
SELECTCategoryNameFROMCategoriesWHEREFREETEXT(Description,'sweetestcandybreadanddrymeat')
FreeTextTable
它和FreeText的差別就跟Contains和ContainsTable的差別一樣。
版權(quán)聲明:本站文章來源標(biāo)注為YINGSOO的內(nèi)容版權(quán)均為本站所有,歡迎引用、轉(zhuǎn)載,請保持原文完整并注明來源及原文鏈接。禁止復(fù)制或仿造本網(wǎng)站,禁止在非maisonbaluchon.cn所屬的服務(wù)器上建立鏡像,否則將依法追究法律責(zé)任。本站部分內(nèi)容來源于網(wǎng)友推薦、互聯(lián)網(wǎng)收集整理而來,僅供學(xué)習(xí)參考,不代表本站立場,如有內(nèi)容涉嫌侵權(quán),請聯(lián)系alex-e#qq.com處理。
相關(guān)文章
關(guān)注官方微信