我有这个SQL查询工作,我想迁移到Laravel查询生成器格式


I have this SQL query working and I want to migrate to the Laravel Query Builder format

Today正在使用此SQL查询。

 SELECT me.id
 FROM refrees r
 LEFT JOIN matches m
 ON m.refree_id = r.id
 LEFT JOIN match_events me
 ON m.id = me.match_id
 WHERE  r.id = 1
 AND me.match_event_type_id = 2

我已经试过了,但它不起作用。

 $c = DB::table('refrees as r')
 ->leftJoin('matches as m', 'r.id', '=', 'm.refree_id')
 ->leftJoin('match_events as me', 'me.id', '=', 'm.id')
 ->where('r.id', '=', '1')
 ->where('me.match_event_type_id', '=', '2')
 ->select('me.id')
 ->get();

这是第二次联接中的不同条件。

LEFT JOIN match_events me m.id = me.match_id

必须

->leftJoin('match_events as me', 'me.match_id', '=', 'm.id')

而不是

->leftJoin('match_events as me', 'me.id', '=', 'm.id')

我的错。它是

 ->leftJoin('match_events as me', 'me.id', '=', 'm.id') 

我会放在哪里

 ->leftJoin('match_events as me', 'me.id_match', '=', 'm.id')