我是 Laravel 的新手,查询生成器有一些问题。
我想构建的查询是这样的:
SELECT SUM(transactions.amount)
FROM transactions
JOIN categories
ON transactions.category_id == categories.id
WHERE categories.kind == "1"
我尝试构建这个,但它不起作用,我不知道我错在哪里。
$purchases = DB::table('transactions')->sum('transactions.amount')
->join('categories', 'transactions.category_id', '=', 'categories.id')
->where('categories.kind', '=', 1)
->select('transactions.amount')
->get();
我想获取属性“kind”等于 1 的所有交易并将其保存在变量中。
这是数据库结构:
交易(id、名称、金额、类别_id)
类别(id、姓名、种类)
你不需要使用select()
or get()
当使用聚合方法作为sum
:
$purchases = DB::table('transactions')
->join('categories', 'transactions.category_id', '=', 'categories.id')
->where('categories.kind', '=', 1)
->sum('transactions.amount');
阅读更多:http://laravel.com/docs/5.0/queries#aggregates http://laravel.com/docs/5.0/queries#aggregates
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)