php - MySQL to Laravel query -
i have query:
select concat(firstname, ' ', lastname), email users id in( select user_id company_user company_id in ( select id companies id in ( select company_id activities created_at between date_sub(curdate(), interval 8 day) , date_sub(curdate(), interval 6 day) ) ) );
and i'd make more "laravel-friendly".
i did models (and relations on it) each table:
activity (who belongs company) company (who has n-to-n relationship user) user (who has n-to-n relationship company)
i think covers everything. ask me missing details.
thanks.
or joins equal spencer7593 response:
user::select(db::raw('concat(users.firstname, ' ', users.lastname)'), 'users.email') ->join('company_user', 'company_user.user_id', '=', 'users.id') ->join('companies', 'companies.id', '=', 'company_user.company_id') ->join('activities', 'activities.company_id', '=', 'companies.id') ->wherebetween('created_at', [ db::raw('curdate() - interval 8 day'), db::raw('curdate() - interval 6 day') ]) ->groupby('users.id') ->get();
Comments
Post a Comment