【问题标题】:Laravel Query Builder WHERE NOT INLaravel 查询生成器不在
【发布时间】:2015-04-06 08:10:59
【问题描述】:

我有以下 sql 查询

SELECT * FROM exams WHERE exams.id NOT IN (SELECT examId FROM testresults)

如何将其转换为 Laravel 查询构建器格式?

谢谢。

【问题讨论】:

    标签: mysql laravel query-builder


    【解决方案1】:

    您可以使用 whereNotIn 和闭包:

    $result = DB::table('exams')->whereNotIn('id', function($q){
        $q->select('examId')->from('testresults');
    })->get();
    

    【讨论】:

    • 最后还需要加->get()吗?
    【解决方案2】:

    与雄辩:

    $result = Exams::whereNotIn('id', function($q){
            $q->select('examId')->from('testresults');
        })->get();
    

    【讨论】:

    • 由于这个问题在 2015 年有一个公认的答案,如果你能edit 你的答案并解释你的答案与公认的答案有何不同以及在您认为这是更好的方法的情况下。
    猜你喜欢
    • 2015-12-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-01-10
    • 2019-01-29
    • 2018-11-27
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多