如何搜索具有多个属性的猫鼬数据?
Posted
技术标签:
【中文标题】如何搜索具有多个属性的猫鼬数据?【英文标题】:How do I search the mongoose data with with multiple properties? 【发布时间】:2021-12-09 14:44:20 【问题描述】:我按用户(userID)创建了一个团队,现在我想搜索该用户是否存在于团队中。
exports.start = async (message) =>
const check = await group.find(userID1:message.author.id ||userID2:message.author.id || userID3:message.author.id)
console.log(check);
我的数据库是这样的
"_id" : ObjectId("6173107fcf643f15e1fced83"),
"userID1" : "769819933390667796",
"userName1" : "Davion",
"userID2" : "247276609894219777",
"userName2" : "Davion",
"userID3" : "898413310872006716",
"userName3" : "Davion",
"team" : "3",
"__v" : 0
【问题讨论】:
【参考方案1】:$或类似逻辑或运算符
exports.start = async (message) =>
const check = await group.find(
$and: [
$or: [
userID1: message.author.id ,
userID2: message.author.id ,
userID3: message.author.id
]
]
)
console.log(check);
$and 对一个或多个表达式(表达式 1、表达式 2 等)组成的数组执行逻辑与运算,并选择满足所有表达式的文档。
exports.start = async (message) =>
const check = await group.find(
$and: [
userID1: message.author.id ,
userID2: message.author.id ,
userID3: message.author.id
]
)
console.log(check);
【讨论】:
以上是关于如何搜索具有多个属性的猫鼬数据?的主要内容,如果未能解决你的问题,请参考以下文章