【发布时间】:2018-12-28 01:11:14
【问题描述】:
我在数据库中有以下文件。我想要的是能够通过数组内的一个子文档的值对文档进行排序。这可能吗?
{
name: "Item A",
subItems: [{
name: "Subitem 1",
value: 10
},
{
name: "Subitem 2",
value: 20
}]
},
{
name: "Item B",
subItems: [{
name: "Subitem 1",
value: 5
},
{
name: "Subitem 2",
value: 60
}]
}
我想按其中一个子项的值对文档进行排序,以便按升序排序的预期结果低于(在这种情况下,按降序排序也会给出相同的结果,因为项目 B 具有最低和最大价值的项目)。我并不关心这个查询中子项的顺序,只关心父文档的顺序。
预期结果:
{
name: "Item B",
subItems: [{
name: "Subitem 1",
value: 5
},
{
name: "Subitem 2",
value: 60
}]
},
{
name: "Item A",
subItems: [{
name: "Subitem 1",
value: 10
},
{
name: "Subitem 2",
value: 20
}]
}
我知道它必须使用聚合,但不知道如何开始。任何帮助表示赞赏。
【问题讨论】:
标签: database mongodb mongodb-query aggregation-framework