Laravel Сравните несколько отношений «многие ко многим» - PullRequest
0 голосов
/ 04 декабря 2018

Я использую Laravel Eloquent для извлечения данных.Вот как выглядит моя база данных.

У меня есть предпочтения пользователя в одной сводной таблице и предпочтения агентства в другой:

ojoi

Может кто-нибудь помочь мне придумать команду Eloquent, которая вернет всех пользователей, которые имеют хотя бы те же настройки, что и агентство?

Заранее спасибо!

1 Ответ

0 голосов
/ 04 декабря 2018

Вы можете написать функцию запроса, подобную этой, где вы получите идентификатор пользователя с дублированным полем 'agency'

Route::get('duplicates', function () {


$results = \App\Users::whereIn('id', function ( $query ) {
 $query->select('id')->from('users')->groupBy('agency')->havingRaw('count(*) > 1');
   })->get();
   return $results;
 });

Надеюсь, это поможет вам

...