創建索引MongoDB的全文檢索
db.MyCollection.createIndex({'$**': 'text'}, {name: 'FullTextIndex'})
搜索匹配
db.MyCollection.find({$text: {$search: 'myWord'}}).count()
結果是1。已備案的具有價值 「myWord在這裏」
如果我這樣做定期搜索所選字段如下,我得到兩條記錄,一條記錄有Name =「myWord在這裏」,第二條記錄有「 myWord「的詳細信息提交的」在這裏東西,myWord在這裏「
db.getCollection('MyCollection').find({
"$or":[{"Name":/myWord/i}, {"Details":/myWord/i}]
}).sort({"Name": 1})
我怎樣才能重新創建索引,以便它在各個領域搜索的SQL其中類似%SEARCHTEXT%的任何領域
最後我怎麼能寫在C#驅動這個搜索查詢
更新:
我進一步看着它。它會查找所有帶有前綴和後綴空格的搜索關鍵字,但不是單詞中字符串的一部分。
例如,它返回一個記錄的值「你好myWord在這裏」,但不會返回「HellomyWord」
但根據這個文件,它支持通配符搜索。 https://docs.mongodb.com/v3.0/reference/operator/query/text/
MongoDB全文搜索不支持通配符。如果你想使用通配符,使用正則表達式。 – Saleem
正則表達式集合的每一列?我集合中的所有文檔都沒有相同的模式。每個文件有30到90個字段 – HaBo