您的位置:首頁技術文章
文章詳情頁

mysql - laravel 子查詢的問題

瀏覽:113日期:2022-06-15 13:33:47

問題描述

要拼成如下語句:

select field1,field2,field3 from table1 inner join (select id from table1 where field4=$field4 limit 100, 20) as temp using(id)

laravel 改怎么寫?···嘗試了許多都不行

感謝~

問題解答

回答1:

直接用Laravel的ORM是無法實現的,至少是目前無法實現,所以這種需求還是乖乖用DB類提供的原生SQL方式吧,比如用DB::select等。

也可以參考一下這個Laravel 5. Using the USING operator,跟你一樣的需求。

這里有一個pull請求,為Laravel添加對using的支持,不過貌似因為沒有添加相應的單元測試被拒了。

回答2:

$courses = Orgcourse::where(’classify’,’=’,$num)->join(’collections’,’orgcourses.id’,’=’,’collections.cid’)->select(DB::raw(’*,orgcourses.id as o_id,collections.id as c_id’))->orderBy(’collections.created_at’,’desc’)->paginate(2);類似于這種,能查出來,但是有點繁瑣好像,關聯查詢

相關文章:
国产综合久久一区二区三区