php - 一对多关系发生的雄辩次数
问题描述
我正在努力雄辩地做一些非常具体的事情。
我有两张表,“餐食”和“产品”,以及一个将每种产品与一顿餐食相关联的数据透视表 meal_product。
一件重要的事情是产品具有能量,以千卡为单位。
假设用户可以吃包含相同产品的不同餐点,我想获得用户消耗最多的 5 种产品的总能量。
我还必须选择一个特定用户消耗的能量价值最高的 5 种产品,这就是我所做的:
$highProducts = Product::whereHas('meals', function($q) use($user_id) {
$q->where('user_id', $user_id);
})->whereNotNull('energetic_value')
->orderBy('energetic_value', 'DESC')
->take(5)
->get();
这可行,但我不知道如何调整它,以便计算用户消费产品的次数,然后将其乘以它的能量值以获得总数。
解决方案
推荐阅读
- java - IBM VisualAge RPG 密码更改给出错误无法在注册表中找到 JRE,需要 JRE
- node.js - 即使使用 process.on(uncaughtException),Nodejs 进程也会崩溃
- c - 使用在指定初始化程序中初始化的变量
- c# - 我们可以将 JSON 文件转换为 Gherkin 脚本吗
- python - 打印字符串金字塔
- mysql - MySQL ORDER 字符数字
- hibernate - Micronaut data-jpa - 一对多 - 子实体没有父引用
- java - 我正在传递一个包含用户名和密码的有效负载,我正在屏蔽它们
- reactjs - 仅当字段存在时如何对字段运行 Mobx 验证
- python - 使用 RPI 3b+ 和(可能)opencv 从多个 USB 摄像头读取和处理帧?