MongoDB 的 Criteria 方法求助

2021-10-12 17:02:39 +08:00
 YYYbw
求助下大佬们,MongoDB 有没有调用 criteria 里的什么方法可以判断一个属性是否同时满足多个条件的
现在想到的是 c.and().in() ,但是这个 in 字句还是不能支持同时满足
1242 次点击
所在节点    程序员
5 条回复
AllanAG
2021-10-12 17:40:37 +08:00
一个字段满足多个条件? 是范围查询吗。试试把条件拆开:and 中添加多个相同的字段,每个字段不同的条件。
代码里是 c.and(c1,c2...)
```
db.xxxx.find({
$and:[{
status:{
$gte:"2"
}
},{
status:{
$lte:"3"
}
}],
})
```
qW7bo2FbzbC0
2021-10-12 17:50:31 +08:00
criteria 是什么,你的后半句,楼上说的对
GiftedJarvis
2021-10-12 18:01:42 +08:00
用 `or`,像这样
```Kotlin
val criteria = Criteria().orOperator(
Criteria("1").`is`(1),
Criteria("2").`is`(2)
)
mongoTemplate.find(
Query(criteria),
Any::class.java
)
```
GiftedJarvis
2021-10-12 18:02:23 +08:00
@GiftedJarvis 不对,是 `andOperator`
YYYbw
2021-10-12 18:20:09 +08:00
刚刚查了一下貌似有个 elematch 是同时满足的一个语句,返回一个 criteria 对象

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/807354

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX