I have some problems with my eloquent model, where I try to join two different tables in one
Now I have two tables like.
First tables name \"company_saved_cv
Well when you use LEFT JOIN with where it acts as an INNER JOIN
Use LEFT JOIN and WHERE like
SELECT workers.name_and_surname, workers.id, workers.location,company_saved_cv.worker_id
FROM workers LEFT JOIN company_saved_cv
ON company_saved_cv.worker_id= workers.id
WHERE company_saved_cv.company_id = 2
OUTPUT
|id|location|name_and_surname|worker_id|
---------------------------------------|
|61|London | John John | 61 |
|66|London | John John | 66 |
Use LEFT JOIN and AND like
SELECT workers.name_and_surname, workers.id, workers.location,company_saved_cv.worker_id
FROM workers LEFT JOIN company_saved_cv
ON company_saved_cv.worker_id= workers.id
AND company_saved_cv.company_id = 2
OUTPUT
|id|location|name_and_surname|worker_id|
---------------------------------------|
|61|London | John John | 61 |
|62|London | John John | NULL |
|66|London | John John | 66 |
|67|London | John John | NULL |
|68|London | John john | NULL |
New query
$query = Worker::select('workers.name_and_surname', 'workers.id', 'workers.location','company_saved_cv.worker_id')
->leftJoin('company_saved_cv', function($leftJoin)
{
$leftJoin->on('company_saved_cv.worker_id', '=', 'workers.id')
->on('company_saved_cv.company_id', '=', Session::get('company_id') );
})