我想創建一個使用別名laravel自聯接,但它似乎並不想要撿起它,因爲我得到一個錯誤,說沒有找到列p1.sub_menu
和p2.5
列。這是我加盟:列未在laravel找到
$menu = DB::table('pages AS p1')
->leftJoin('pages AS p2', 'p1.sub_menu', '=', 'p2.'.$id.'')->get();
我想創建一個使用別名laravel自聯接,但它似乎並不想要撿起它,因爲我得到一個錯誤,說沒有找到列p1.sub_menu
和p2.5
列。這是我加盟:列未在laravel找到
$menu = DB::table('pages AS p1')
->leftJoin('pages AS p2', 'p1.sub_menu', '=', 'p2.'.$id.'')->get();
錯誤,因爲你leftJoin聲明
PARAMS在leftJoin聲明是要使用關係列。
$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();
顯然你沒有'pages.5'場,你呢?它是'p2.id'。 – 2014-10-10 09:58:44