【发布时间】:2021-12-31 00:29:44
【问题描述】:
我在数据库中有以下文档:(每个文档都是一个有成员的房间)
[
{
"id": "room1",
"members": [{
"id": "member1",
"acks": "XXX",
},{
"id": "member2",
"acks": "XXX",
},{
"id": "member3",
"acks": "XXX",
},{
"id": "member4",
"acks": "XXX",
}]
},
{
"id": "room2",
"members": [{
"id": "memberA",
"acks": "XXX",
},{
"id": "memberB",
"acks": "XXX",
},{
"id": "memberC",
"acks": "XXX",
},{
"id": "memberD",
"acks": "XXX",
},{
"id": "memberE",
"acks": "XXX",
},{
"id": "memberF",
"acks": "XXX",
}]
},
{
"id": "room3",
"members": [{
"id": "memberX",
"acks": "XXX",
},{
"id": "memberY",
"acks": "XXX",
},{
"id": "memberZ",
"acks": "XXX",
}]
}
]
从前端发送下一个数据:
[{
"id": "room1"
"members": ["member1", "member2"]
},{
"id": "room2"
"members": ["memberA", "memberB", "memberC", "memberF"]
},{
"id": "room3"
"members": ["memberX", "memberY"]
}]
我想检查每个房间的所有成员是否匹配,并返回一个唯一的布尔值作为响应 --> 如果全部匹配则返回 True,如果不匹配则返回 False。
此数据应返回 false:
[{
"id": "room1"
"members": ["memberA", "member2"] //Because memberA is not in room1
},{
"id": "room2"
"members": ["memberA", "memberB", "memberC", "memberF"]
},{
"id": "room3"
"members": ["memberX", "memberY"]
}]
是否可以通过一个查询来实现?
非常感谢您。
【问题讨论】: