這是我的MongoDB查找查詢:MongoDB的發現操作查詢給出錯誤的結果
db.getCollection('candidate').find({
"$or": [
{
"email_id": {
"$regex": {
"regex": "^ranjit",
"flags": "i"
}
}
},
{
"mobile_no": {
"$regex": {
"regex": "^ranjit",
"flags": "i"
}
}
},
{
"phone_no": {
"$regex": {
"regex": "^ranjit",
"flags": "i"
}
}
},
{
"skill_name": {
"$regex": {
"regex": "^ranjit",
"flags": "i"
}
}
},
{
"current_address": {
"$regex": {
"regex": "^ranjit",
"flags": "i"
}
}
},
{
"first_name": {
"$regex": {
"regex": "^ranjit",
"flags": "i"
}
}
}
]
}
)
以上蒙戈DB查詢返回我是錯的元組。它返回不包含「ranjit」的元組,但實際上我想要包含「ranjit」的元組。
你能解釋爲什麼它返回錯誤的元組,什麼是正確的查詢?
爲什麼不使用通配符的文本索引? – styvane
什麼是mongodb版本? – 4J41
mongo DB - 2.4.14 – user3235105