如何解决Mongodb查找文档值是否以子字符串形式存在
_id:5f8e7d8084378609b2dca93f
user_id:"5f8465a777b1814c588521e2"
price:96
city:"Mumbai"
totalCost:96
_id:5f8e7d8084378609b2dca93f
user_id:"5f8465a777b1814c588521e2"
price:96
city:"Delhi"
totalCost:96
然后在我的api中我有类似的数据
cityInorder='Mumbai City'
那么我如何从我的ORDER集合中找出所有以order.city作为“ cityInorder”中子字符串的订单
这意味着在我的第一个收集城市是“孟买”,所以我收到的数据是“孟买市”,所以我应该退回该文件
我尝试过
db.collection('orders').find({
city: {
$regex: cityInorder
}
})
但似乎这与:(相反,也应该不区分大小写
解决方法
有几个问题。
- 您在需要搜索用例的地方使用
regex
选项。 - 您期望搜索不区分大小写。
您可以做几件事。
-
如果您需要搜索用例并且正在使用图集,则可以使用图集的
search
功能。 -
如果没有地图集,并且需要符合此条件,则可以执行以下操作。
您可以使用正则表达式的i
选项以避免区分大小写。
您必须按空格分隔输入单词,并发出or
请求以匹配Mumbai
或city
我建议使用选项1。如果仅是城市,并且始终需要匹配第一个术语,则可以尝试使用第二个选项,其中涉及一些技巧。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。