mongodb - 在 MongoDB 中返回基于权重字段的记录
问题描述
我有 2 个系列。一个用于位置,另一个用于配置。每个位置可以有多个位置。当我查询一个位置时,我想根据分配给该配置的权重返回一个配置。举个例子:
位置 A 有 3 种配置
- Config1.weight = 500
- Config2.weight = 1000
- Config3.weight = 1000
上面的权重意味着 Config1 有 20% 的机会被返回,而 Config2/3 有 40% 的机会。我通过添加权重然后除以给出百分比的单个重量来得到这个百分比。
配置1示例:
- 500 + 1000 + 1000 = 2500
- 500 / 2500 = .2
- .2 * 100 = 20% 几率
我正在努力寻找一种相对简单的方法来总体上做到这一点。
附带说明:这是一个新系统,因此如果有更好的方法,我可以更改权重的存储/使用方式。
解决方案
我最终使用了这里讨论的解决方案,虽然它不是在 MongoDB 中,而是我的 nodejs 微服务用于返回配置文件。
推荐阅读
- html - 有没有办法使用 flex 使两个元素内联?
- mongodb - 如何使用 Spring Data JPA 按 Id 和 Boolean 查询设置为“True”
- javascript - UWP (JS) 应用程序中的自动后退按钮功能
- chart.js - Chart.js 如何在调整大小事件时更改散点图的点半径?
- javascript - 如果它们相等,则比较反应中的两个状态数组将不会返回布尔值(True)
- azure - 如何将 Azure 访问令牌转换为会话 cookie?
- python - 有没有办法使用 python 使用请求下载,一个 csv 的 url 就像'Blob:https'
- python - 跟踪功能无法按预期使用导入的文件
- git - 远程:错误:GH001:检测到大文件。您可能想尝试 Git 大文件存储 - https://git-lfs.github.com
- ssl - 当服务器验证客户端证书失败时,tls 1.3 客户端不报告握手失败