laravel 5.6如何获取所有组的味精数量?

时间:2018-08-23 09:01:32

标签: laravel eloquent

我有3张桌子: 用户,组,消息;

用户表是php artisan make:auth生成的默认表,“组”表包含:

id,book_id

邮件表包含:

id,group_id,来自msg_content

用户表和组表之间存在多对多关系,数据透视表包含:

user_id,group_id,last_id_seen

现在,我要获取属于用户的组以及属于每个组并具有以下形式的id> last_id_seen的消息数:

group => number_of_messages _> _ last_id_seen

我是Laravel的新手,所以请您帮我做一下?

1 个答案:

答案 0 :(得分:0)

使用withCount()

$groups = Auth::user()->groups()->withCount(['messages' => function($query) {
    $query->whereColumn('id', '>', 'last_id_seen');
}])->get();

foreach($groups as $group) {
    // $group->messages_count
}