2016-12-19 4 views
0

У меня есть три типа уведомлений, TYPE_ATYPE_BTYPE_C. Для каждого типа может быть несколько уведомлений для одного пользователя. Я хочу получить количество уведомлений, полученных пользователем для каждого из типов уведомлений. Теперь у меня есть это:Как подсчитать количество уникальных строк в группе по laravel?

$notifications = Notification::where('user_id', $user->id)->groupBy('notification_type')->get(); 

Как подсчитать количество строк, каждая notification_type имеет?

+0

так что вы хотите, чтобы считать строки, которые имеют уникальный 'notification_type'? – Beginner

+2

'-> count()' возможно. https://laravel.com/docs/4.2/queries – Xatenev

+0

@NewbeeDev yep. уникальный тип уведомления для каждого пользователя. Например, сколько из уведомлений 'TYPE_A' имеет' user_1' получило –

ответ

1

Вы можете использовать raw() метод как:

$notifications = Notification::where('user_id', $user->id) 
      ->select('*', DB::raw("count(*) as count")) 
      ->groupBy('notification_type') 
      ->get(); 
+0

спасибо. это сделало это. –

Смежные вопросы