首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >或者在中有子查询的IN在哪里

或者在中有子查询的IN在哪里
EN

Stack Overflow用户
提问于 2018-02-13 11:13:53
回答 1查看 2.2K关注 0票数 1

如何使查询生成器用于以下查询

代码语言:javascript
复制
SELECT * FROM `rad_nas` WHERE nas_assigned = ".$id." 
OR nas_assigned IN 
(select franchise_id from rad_franchise_has_parent where parent_id=".$id." )
OR nas_id IN 
(select  fra_nas_id  from rad_franchise_has_nas where franchise_nas_id=".$id.")
EN

回答 1

Stack Overflow用户

发布于 2018-02-13 11:37:19

检查文档以供将来使用,不要发布问题,并期望其他人为您编写或调试您的代码,这是您的工作,我们将给您提供指导,但下面是一个将其转换为Query Builder的完整示例

代码语言:javascript
复制
$results = DB::table('rad_nas')->where('nas_assigned', $id)
             ->orWhereIn('nas_assigned', function($query) use ($id) {
                  $query->select('franchise_id')
                        ->from('rad_franchise_has_parent')
                        ->where('parent_id', $id);
             }
             ->orWhereIn('nas_id', function($query) use ($id) {
                  $query->select('fra_nas_id')
                        ->from('rad_franchise_has_nas')
                        ->where('franchise_nas_id', $id);
             }

@DanielO指出

Raw语句将作为字符串注入查询,因此您应该非常小心地避免创建SQL注入漏洞。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/48765505

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档