spróbuj wysłać podzapytanie jako surowe wyrażenie jako pierwszy parametr w leftJoin() metoda, na przykład:
$subquery = '(SELECT
usr_log1.*
FROM
users_log_logradouro AS usr_log1
LEFT JOIN
users_log_logradouro AS usr_log2
ON usr_log1.user_id = usr_log2.user_id
AND usr_log1.created_at < usr_log2.created_at
WHERE
usr_log2.user_id IS NULL)
AS temp';
DB::table('users as usr')
->select(...)
->leftJoin(DB::raw($subquery), 'usr.id', '=', 'temp.user_id')
->leftJoin(...)
->join(...)
->join(...)
->join(...)
->leftJoin(...)
->leftJoin(...)
->leftJoin(...)
->where(...)
->get()
w tych pytaniach są podobne przykłady:
Narzędzie do tworzenia zapytań Laravel Fluent Dołącz za pomocą podzapytania
Jak pisać to (left join, subquery ) w Laravel 5.1?
więcej informacji o przyłączeniach:https://laravel.com/docs/5.5/queries#joins