对不起,我想不出合适的头衔。 情况如下:
我有两个表:montages
和orders
,其中Montage
属于Order
。
我的目标是建立一个mysql查询,该查询返回一个float值来表示多个蒙太奇值的总和。对于查询中的每个蒙太奇,我需要将其订单的预算除以属于同一订单的蒙太奇数量。这种划分的结果应该是ecah蒙太奇的属性。最后,我想对这些属性求和并检索单个值。
我已经尝试了很多类似以下内容的变体,但是似乎都没有用正确的语法编写,所以我不断出错:
$sum = App\Montage::where(/*this doesn't matter*/)
->join('orders', 'montages.order_id', '=', 'orders.id') //join the orders table
->select('montages.*, orders.budget') //include the budget column
->selectRaw('count(* where order_id = order_id) as all') //count all the montages of the same order and assing that count to the current montage
->selectRaw('(orders.budget / all) as daily_payment') //divide the budget of the order by the count; store the result as `daily_payment`
->sum('daily_payment') //sum the daily payments
我真的迷失了正确的语法,无法弄清楚。我估计对于知道他们的知识的人来说,这是一件相当琐碎的sql任务,但是不幸的是,我似乎并不是其中的一员……非常感谢您的帮助!