MySQL и Eloquent Query - PullRequest
       4

MySQL и Eloquent Query

0 голосов
/ 09 сентября 2018

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

Пользователи - идентификатор, имя, адрес электронной почты, обозначение, тип

Запросы - идентификатор, продукт, пользователь

В поле таблицы «Запрос» пользователь является внешним ключом из таблицы «Пользователи».

Теперь я хочу подсчитать количество запросов, сделанных каждым пользователем, где users.type равно 3 или 6 вместе с данными пользователей.

Выходные данные должны иметь эти поля users.id, users.name, users.email, users.designation, users.type, count.

Пожалуйста, помогите мне написать запрос MYSQL и Eloquent Query (если возможно). Пожалуйста, проверьте Таблицы данных для большего понимания.

1 Ответ

0 голосов
/ 09 сентября 2018

SQL довольно прост:

SELECT u.id, u.name, u.email, u.designation, u.type, count(r.id)
FROM users AS u
JOIN Request AS r ON r.user_id = u.id
WHERE u.type IN (3,6)
GROUP BY u.id, u.name, u.email, u.designation, u.type

Чтобы получить это с Eloquent, вашей модели User потребуется отношение к Request. Я предполагаю requests:

$usersWithRequestCount = \App\User::withCount('requests')->whereIn('types',[3,6])->get()
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...