Tôi đang cố gắng tìm kiếm toàn bộ mongodb với nhiều trường hoạt động. tôi đã thiết lập các chỉ số trên 3 lĩnh vực-tên, mô tả, thể loại, và xác minh vớiTìm kiếm văn bản mongodb với nhiều trường
document.collection.getIndexes()
, mà returns-
[
{
"v" : 1,
"key" : {
"_id" : 1
},
"name" : "_id_",
"ns" : "document.collection"
},
{
"v" : 1,
"key" : {
"name" : 2,
"description" : 1,
"category" : 1
},
"name" : "name_2_description_1_category_1",
"ns" : "document.collection",
"background" : true,
"safe" : null
}
]
Bây giờ, nếu tôi cố gắng thực hiện một tìm kiếm văn bản, sử dụng follwing Command-
db.collection.find( {$text:{$search:'alias'}} ).limit(10)
nhận được thông báo lỗi sau:
error: {
"$err" : "Unable to execute query: error processing query: ns=document.collection limit=10 skip=0\nTree: TEXT : query=alias, language=, tag=NULL\nSort: {}\nProj: {}\n planner returned error: need exactly one text index for $text query",
"code" : 17007
}
Tôi đã thử google và mongodb tài liệu nhưng tôi không thể tìm thấy bất cứ điều gì.
Đó không phải là chỉ mục văn bản. Tên sẽ có "văn bản" sau mỗi tên trường và các chỉ báo khác. –