首页 > 解决方案 > 在 MongoDB 中返回基于权重字段的记录

问题描述

我有 2 个系列。一个用于位置,另一个用于配置。每个位置可以有多个位置。当我查询一个位置时,我想根据分配给该配置的权重返回一个配置。举个例子:

位置 A 有 3 种配置

上面的权重意味着 Config1 有 20% 的机会被返回,而 Config2/3 有 40% 的机会。我通过添加权重然后除以给出百分比的单个重量来得到这个百分比。

配置1示例:

我正在努力寻找一种相对简单的方法来总体上做到这一点。

附带说明:这是一个新系统,因此如果有更好的方法,我可以更改权重的存储/使用方式。

标签: mongodb

解决方案


我最终使用了这里讨论的解决方案,虽然它不是在 MongoDB 中,而是我的 nodejs 微服务用于返回配置文件。

如何在Javascript中选择加权随机数组元素?


推荐阅读