mongo 4.0以下版本 类型转换
Posted jenny-1
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mongo 4.0以下版本 类型转换相关的知识,希望对你有一定的参考价值。
1.文档格式
"Values" : [ { "key" : "姓名", "value" : "jenny" }, { "key" : "年龄", "value" : "20" }]
2.查询
将values字段平铺到根。并将年龄字段值转换成int。按姓名降序
db.getCollection(‘Users‘).aggregate([ {$addFields: { ValueObj: { $arrayToObject: { $map: { input: "$Values", as: "field", in: {$cond:[{$eq:["$$field.key","年龄"]},["$$field.key", NumberInt("$$field.value")],["$$field.key", "$$field.value"]]} } } } } }, {$addFields:{"ValueObj.Values":"$Values"}}, {$replaceRoot:{newRoot:"$ValueObj"}}, {$sort:{"姓名":-1}}, ])
3.结果
"姓名" : "jenny", "年龄" : 20,
"Values" : [
{
"key" : "姓名",
"value" : "jenny"
},
{
"key" : "年龄",
"value" : "20"
}]
以上是关于mongo 4.0以下版本 类型转换的主要内容,如果未能解决你的问题,请参考以下文章
反应式 mongo 模板:mongo 4.4.0 上的“''cursor' 选项是必需的”