Подсчитать количество строк в другой таблице, используя соединение на Laravel Eloquent - PullRequest
0 голосов
/ 25 ноября 2018

Как я могу использовать eloquent для подсчета строк в другой таблице, объединенной с основной таблицей?

У меня есть три таблицы:

  • клиенты
  • смс-уведомление
  • уведомление по электронной почте

Я хочу присоединиться к ним, сначала потянув список клиентов, а затем посчитать, сколько раз они получали уведомления как по SMS, так и по электронной почте.Наконец, возвращает счетчик или 0, если уведомление не было отправлено.

enter image description here

Я нашел образец: Laravel Eloquent для присоединения к таблице и подсчета связанных

Я использовал это для электронной почты:

<?php

$clients = Client::where('cl_delete_status', false)
    ->leftJoin('insura_communication_emails', 'insura_clients.cl_id', 'insura_communication_emails.cl_id')
    ->leftJoin('insura_communication_sms', 'insura_clients.cl_id', 'insura_communication_sms.cl_id')
    ->select('*', DB::raw('count(ice_id) as total'))
    ->groupBy('insura_clients.cl_client_id')
    ->orderBy('insura_clients.cl_id', 'desc')->get();

Как я могу поместить обе таблицы, которые являются электронной почтой и SMS insura_communication_sms и в коде выше?Он пропускает те с 0 счетами в уведомлении по электронной почте.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...