我的收藏如下: col1
{"_id":"5c3ea35651166f3refsfd5",
"environment": "production",
"application": ['cloud', 'android', 'finance']},
{"_id":"5c3ea35651166f3refsfd6",
"environment": "production",
"application": ['banking', 'network', 'finance']}
仅当集合中的应用程序与 ['cloud','database','booking'] 列表中的应用程序匹配时,我才希望对数据进行投影。在这种情况下,我应该只能获取第一个文档,因为它在文档和列表中都具有“ 云 ”。
我需要使用聚合。但是我没有找到正确的方向。
答案 0 :(得分:1)
您可以使用$in
查询运算符
col1.aggregate([
{ '$match': { 'application': { '$in': ['cloud', 'database', 'booking'] }}},
{ '$project': { 'environment': 1, 'application':1 }}
])