如何使用Mongodb聚合框架查找不考虑顺序的数字组合
是否可以使用mongodb计算组合用于特定字段的次数,而不考虑顺序?在我的例子中,我希望合计所有具有相同项目编号的文档,而不管这些编号的顺序如何。例如[5,4,3]和[4,3,5]被认为是相同的,因为它们有相同的数字 在我的模式示例中,我希望找到所有相同项的id(无论它们的顺序如何)。从那里我想计算“在线”的百分比 例如,我有这个模式如何使用Mongodb聚合框架查找不考虑顺序的数字组合,mongodb,mongoose,mongodb-query,Mongodb,Mongoose,Mongodb Query,是否可以使用mongodb计算组合用于特定字段的次数,而不考虑顺序?在我的例子中,我希望合计所有具有相同项目编号的文档,而不管这些编号的顺序如何。例如[5,4,3]和[4,3,5]被认为是相同的,因为它们有相同的数字 在我的模式示例中,我希望找到所有相同项的id(无论它们的顺序如何)。从那里我想计算“在线”的百分比 例如,我有这个模式 { id: 5, online: true, item1: 432, item2: 314, item3: 453, item4: 324, ite
{
id: 5,
online: true,
item1: 432,
item2: 314,
item3: 453,
item4: 324,
item5: 238,
item6: 138
}
{
id: 6,
online: false,
item1: 314, //same as above just with item 1 and 2 swapped around
item2: 432,
item3: 453,
item4: 324,
item5: 238,
item6: 138
}
{
id: 7, //no match
online: true,
item1: 394,
item2: 432,
item3: 3253,
item4: 324,
item5: 218,
item6: 438
}
return [5,6],[7]
说实话,我甚至不知道该从哪里开始,所以任何帮助都将不胜感激:)谢谢
乔尔 为什么不使用数组
items
来存储项目编号,而不使用名为item1
、item2
等的字段。?这将使这(以及可能的许多其他事情)变得更容易,因为您可以使用所有有用的数据。我正在聚合一个外部api中的数据,该api以这种格式提供数据,我将查看集合运算符,看看是否可以将现有数据更改为这种格式。谢谢:)