【发布时间】:2020-08-11 13:04:57
【问题描述】:
我有一个任务表,用于跟踪任务的汽车里程表值。一个任务与它自己相关,并且有一个先前的任务由一个有一个关系定义。我正在尝试创建一个范围以在查询中提取 complete_at_odometer 值。
该值等于上一个任务的 completed_at_odometer 值加上当前任务需要重复的频率。例如,当前的任务 A 需要每 10 英里完成一次。最后一项任务,任务 B 在 5 英里处完成。我正在尝试创建一个范围以将值 complete_at_odometer 添加到应等于 15 的结果中。
这是我目前所拥有的:
public function scopeWithCompleteByOdometer($query)
{
return $query
->join('tasks as oldTask', 'oldTask.current_task_id', '=', 'tasks.id')
->select(
'*',
'oldTask.completed_at_odometer as last_odometer',
'tasks.distance_interval as interval'
);
}
我不确定如何在我的应用程序的数据库层中同时添加 last_odometer 和 interval 值?
我正在使用 Laravel 7 和 MySql 5.7。
感谢您的帮助!
【问题讨论】: