如何将此Sql语句转换为Eloquent或查询生成器
我有4张桌子;
Jobs
Stores
Users
Store_User
每个商店都有多个作业,而商店和用户通过store_user表具有ManyToMany关系。我想获取用户所分配的商店的所有作业。
通过store_user
表将用户分配到一个或多个商店。并且多个工作可以属于商店。
我需要能够使用$user->jobs
或其他可以根据他/她分配的商店获取属于该用户的作业列表的内容。
这是SQL语句。我在PDO中使用。
SELECT * FROM jobs
INNER JOIN store_user
INNER JOIN stores
WHERE stores.id = store_user.store_id
AND store_user.store_id = jobs.store_id
AND store_user.user_id = 2
答案 0 :(得分:0)
你可以试试这个。
$jobs = DB::table('jobs')
->join('store_user','store_user.store_id','=','jobs.store_id')
->join('stores','stores.id','=','store_user.store_id')
->where('store_user.user_id', '=' ,2)
->get();