在 Laravel 查询生成器中计算多列
Count multiple columns in Laravel query builder
我正在研究 laravel 查询生成器的“计数”
我想计算列名 'q12a' 和 'q18a'
我可以使用以下代码计算总记录数。
public function count()
{
$total_projects = Book::count();
return view('count')->with(['total'=>$total_projects]);
}
但是我在多列中遇到问题
我一直在搜索 count multiple columns 并尝试下面的代码,我得到了
Error Call to a member function count() on int
亲爱的 matiaslauriti 帮助我,我更改代码如下。
UPDATED
public function sum_ttl()
{
$q18a_count = DB::table('books')->count('q12a')->count('q18a');
return view('sum_ttl', compact('q12a','q18a'));
}
你能教我如何在控制器和 blade 文件中编写正确的代码吗?
你快到了。 count
将 return 所需列的计数(默认为 *
)。所以你想做这样的事情:
public function sum_ttl()
{
$q12aCount = Books::count('q12a');
$q18aCount = Books::count('q18a');
return view('sum_ttl', compact('q12aCount', 'q18aCount'));
}
如果您想分享您想要执行的确切 SQL 查询,我可以尝试将其“翻译”为 Eloquent。
我正在研究 laravel 查询生成器的“计数” 我想计算列名 'q12a' 和 'q18a'
我可以使用以下代码计算总记录数。
public function count()
{
$total_projects = Book::count();
return view('count')->with(['total'=>$total_projects]);
}
但是我在多列中遇到问题
我一直在搜索 count multiple columns 并尝试下面的代码,我得到了
Error Call to a member function count() on int
亲爱的 matiaslauriti 帮助我,我更改代码如下。
UPDATED
public function sum_ttl()
{
$q18a_count = DB::table('books')->count('q12a')->count('q18a');
return view('sum_ttl', compact('q12a','q18a'));
}
你能教我如何在控制器和 blade 文件中编写正确的代码吗?
你快到了。 count
将 return 所需列的计数(默认为 *
)。所以你想做这样的事情:
public function sum_ttl()
{
$q12aCount = Books::count('q12a');
$q18aCount = Books::count('q18a');
return view('sum_ttl', compact('q12aCount', 'q18aCount'));
}
如果您想分享您想要执行的确切 SQL 查询,我可以尝试将其“翻译”为 Eloquent。