Raf*_*UBI 2 mongodb mongodb-query aggregation-framework
我有一个包含以下文档的集合:
{
map:{
key1:value1,
key2:value2,
....
}
}
Run Code Online (Sandbox Code Playgroud)
我想仅根据地图值过滤文档,而不管键,像map.*之类的东西等于某个值。可以这样做吗?
使用的MongoDB版本是3.4
您可以尝试使用以下聚合$objectToArray和$arrayToObject聚合运算符
db.collection.aggregate([
{ "$project": { "map": { "$objectToArray": "$map" }}},
{ "$match": { "map.v": "value1" }},
{ "$project": { "map": { "$arrayToObject": "$map" }}}
])
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1513 次 |
| 最近记录: |