Laravel 查询生成器 - sum() 方法问题
Laravel Query Builder - sum() method issue
我是 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();
我想获取属性“种类”等于 1 的所有交易并将其保存在一个变量中。
这是数据库结构:
transactions(id, name, amount, category_id)
categories(id, name, kind)
使用聚合方法时不需要使用 select()
或 get()
sum
:
$purchases = DB::table('transactions')
->join('categories', 'transactions.category_id', '=', 'categories.id')
->where('categories.kind', '=', 1)
->sum('transactions.amount');
如果需要 select SUM
列的 select 以及其他列的正常 selection,您可以使用 [=12] 对该列求和 select =]方法:
DB::table('table_name')
->select('column_str_1', 'column_str_2', DB::raw('SUM(column_int_1) AS sum_of_1'))
->get();
您可以获取 Laravel 查询 builder/Eloquent 中的任何列,如下所示。
$data=Model::where('user_id','=',$id)->sum('movement');
return $data;
您可以在记录中添加任何条件。
谢谢
我是 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();
我想获取属性“种类”等于 1 的所有交易并将其保存在一个变量中。 这是数据库结构:
transactions(id, name, amount, category_id)
categories(id, name, kind)
使用聚合方法时不需要使用 select()
或 get()
sum
:
$purchases = DB::table('transactions')
->join('categories', 'transactions.category_id', '=', 'categories.id')
->where('categories.kind', '=', 1)
->sum('transactions.amount');
如果需要 select SUM
列的 select 以及其他列的正常 selection,您可以使用 [=12] 对该列求和 select =]方法:
DB::table('table_name')
->select('column_str_1', 'column_str_2', DB::raw('SUM(column_int_1) AS sum_of_1'))
->get();
您可以获取 Laravel 查询 builder/Eloquent 中的任何列,如下所示。
$data=Model::where('user_id','=',$id)->sum('movement');
return $data;
您可以在记录中添加任何条件。 谢谢