[英]Subtracting two tables in laravel
嗨,我能够从两个表中获取值,现在我希望将这两个值相减。 我如何在Laravel中做到这一点?
public function displayBalance()
{
$results= DB::table('accountspayable')
->selectRaw('sum(accountspayable.amount) as sum')
->where('accountspayable.regnum','=','15459')
->get();
$subjects= DB::table('pay')
->selectRaw('sum(pay.amount) as sum')
->join('accountspayable','pay.accountno','=','accountspayable.accountno')
->where('accountspayable.regnum','=','15459')
->get();
return View::make('users.Balance')->with(array('results'=>$results,'subjects'=>$subjects));
}
尝试这种方式:
public function displayBalance()
{
$results = DB::table('accountspayable')->
where('regnum'. '='. '15459')->
sum('amount');
$subjects = DB::table('pay')->
join('accountspayable','pay.accountno','=','accountspayable.accountno')->
where('accountspayable.regnum','=','15459')->
sum('pay.amount');
return View::make('users.Balance', compact('results', 'subjects'));
}
您可能正在获取具有1个属性(总和)的1条记录的集合。 这是您基本上唯一需要的。 因此,您可以直接在查询构建器中使用聚合函数来获取SUM值。
此外,我还使用“紧凑”将刚刚检索的值分配给视图。 这不是必需的,但可以节省一些代码并且更易于阅读。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.