如何使用Laravel 5查询计算两列的值?
我的数据库结构示例。
+--------+--------+
| value1 | value2 |
+--------+--------+
| 30 | 30 |
+--------+--------+
| 10 | 10 |
+--------+--------+
| 5 | 25 |
+--------+--------+
我希望获得value1 + value2
的总价值我尝试过这样的事情,但它没有用。
$topUsers = DB::table('users_stats')->orderBy('value1 '+' value2', 'desc')->limit(3)->get();
这样我就会收到此错误:
ErrorException in HomeController.php line 39:
A non-numeric value encountered
预期产出:
60
20
30
答案 0 :(得分:2)
尝试
$topUsers = DB::table('users_stats')
->groupBy('id')
->orderByRaw('SUM(value1 + value2) DESC')
->limit(3)
->get();
答案 1 :(得分:0)
使用馆藏
$topUsers = DB::table('users_stats')->limit(3)->get()
->transform(function ($item) {
return $item->value1 + $item->value2;
});