У меня есть две таблицы сотрудников и клиентов, я дал схему ниже.
Customers('id' , 'username', 'location');
Employees('id' , 'EmployeeID' , 'CustomerID', 'location');
В настоящее время я могу использовать запрос для получения сведений о клиентах, например, приведенный ниже запрос, обратите внимание, что это когда пользовательвошел в систему, следовательно, Auth ::
$customerQuery1 = DB::table('customer')
->where('id', '!=', Auth::id())
->where('item', '=' , Auth::customer()->recommendation)
->get();
Каждый сотрудник имеет много клиентов, я хочу, чтобы другие клиенты видели другие элементы клиентов, поэтому я прикрепил поле CustomerID
, которое является внешним ключом и относится кполе id
в таблице Customer.
Я пробовал что-то подобное ниже, однако я думаю, что мне может понадобиться запрос на соединение, но я не уверен.
$query2 = DB::table('Customer','Employee')
->select('username')
->where(['EmployeeID' => Auth::id(), 'CustomerID' => 'id'])
->get();
$query2 = DB::table('Customer')
->select('username')
->join('Employee', 'Customer.id', '=', 'Employee.CustomerID')
->where(['EmployeeID' => Auth::id(), 'CustomerID' => 'id'])
->get();
Затем я возвращаю значения в мой блейд-файл, какниже
return view ('pages.dashboard')
->with('query1',$query1)
, а затем я использую php-отступ в моем блейд-файле для возврата данных пользователей
@foreach ($query1 as $Userfound)
{{ $Userfound->username}}</p>
@endforeach
Фактический запрос необходим на простом английском
, поэтому мне нужновыберите клиента, где CustomerID == id
ПРИМЕЧАНИЕ: идентификатор взят из таблицы клиентов, идентификатор клиента хранится в таблице сотрудников.