这是我的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