文章详情页
mysql - laravel 子查询的问题
浏览:352日期: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);类似于这种,能查出来,但是有点繁琐好像,关联查询
上一条:mysql - 安装gem报错下一条:mysql查询语句执行顺序
相关文章:
1. 自学,刚编了helloworld就失败了2. javascript - 在react中写行间样式的whiteSpace不生效3. python3.x - mongodb 显示不出中文,都是方块,该如何解决?4. javascript - jquery对象被定义成jquery变量后,怎么使用:gt这个(可能表达有问题)5. 为啥最大化个窗口还得找一堆理由?6. 请问PHPstudy中的数据库如何创建索引7. javascript - 求助一个关于indexedDB的问题8. javascript - 怎么获取一个页面中的所数据,然后弄成一个json格式的字符串传给后台9. html5 - chrome下的a标签download属性无法调出另存为的下载框10. android - 微信这个效果是怎么实现的
排行榜

网公网安备