2014-10-10 6 views
0

별칭을 사용하여 laravel에서 자체 조인을 만들려고하지만 p1.sub_menup2.5 열을 찾을 수 없다는 오류가 발생하므로 별칭을 사용하지 않는 것 같습니다. . 여기에 내 가입 :열이 없습니다.

$menu = DB::table('pages AS p1') 
     ->leftJoin('pages AS p2', 'p1.sub_menu', '=', 'p2.'.$id.'')->get(); 
+1

당신이'pages.5' 필드가없는, 당신은 무엇입니까? 그것은'p2.id'입니다. –

답변

0

오류 때문에 당신의 leftJoin 문의 leftJoin 문에

에 Params 당신이 관계를 사용하고자하는 열이

.

$menu = DB::table('pages AS p1')->leftJoin('pages AS p2', 'p1.sub_menu', '=', **'p2.'.$id.''**)->get(); 

내 솔루션은 다음과 같습니다 분명히

$menu = DB::table('pages AS p1')->leftJoin('pages AS p2', 'p1.sub_menu', '=', 'p2.sub_menu')->where("p2.menu_id", "=", $menu_id)->get(); 
+0

p2.id는 알 수없는 열이지만 id 열이 있습니다. – Chibi

+0

디버깅 할 MySQL 쿼리를보기 위해')'를 사용할 수 있습니다. DB 구조 그래서 내 쿼리가 잘못 될 수 있습니다 –

+0

이것은 어리석은 질문 일지 모르지만 var_dump (DB :: getQuerylog()는 join 문 뒤에있을 것입니까? – Chibi