在id laravel中选择和求和值

qltillow  于 2021-07-29  发布在  Java
关注(0)|答案(2)|浏览(447)

我有一个带有innerjoin和点的用户id值的表,我需要添加这些点。

$test = DB::table('users')
    ->orderBy('values.points', 'asc')
    ->join('values', 'values.id_user', '=', 'users.id_brother')
    ->get();

这将显示:

user1 1
user1 1
user1 1

以点为单位的值需要累加起来,并且只与添加的点一起显示一次。
我需要你展示:

User1 3
ffdz8vbo

ffdz8vbo1#

你需要 groupBy 你哥哥和 sum 点数。我对你的表结构和列不是百分之百的满意

return DB::table('users')
    ->orderBy('total', 'asc')
    ->join('values', 'values.id_user', '=', 'users.id_brother')
    ->groupBy('users.id_brother')
    ->get([
        'users.id_brother',
        DB::raw('sum(values.points) as total')
    ]);
9wbgstp7

9wbgstp72#

你可以用计数法

https://laravel.com/docs/7.x/collections#method-计数

相关问题