【问题标题】:Need help on select statement to be used in laravel需要有关在 laravel 中使用的 select 语句的帮助
【发布时间】:2017-08-30 12:34:05
【问题描述】:
select distinct clientID from Client where clientID not in (select clientID from courseDetails inner join course on coursedetails.courseID = course.courseID where coursedetails.courseID = '$courseID')

【问题讨论】:

标签: mysql sql database laravel select


【解决方案1】:

如果您的查询是一个复杂的查询,那么您可以在laravel 中使用RAW 查询,例如:

$data = DB::select(DB::raw('your query'));

Reference

注意: DB::raw() 用于生成查询生成器不会进一步解析的任意 SQL 命令。因此,他们可以通过 SQL 注入创建攻击向量。

【讨论】:

    【解决方案2】:

    我给你一个起点:

    $results = DB::table('Client')
    ->whereNotIn('clientID', function($query) use ($courseID) {
        $query->select('clientID')
        ->from('courseDetails')
        ->join('course', 'courseDetails.courseID', '=', 'course.courseID')
        ->where('coursedetails.courseID', '=', $courseID);
    })->get();
    

    这应该会让你继续前进。您可以根据需要调整它以获得预期的结果。

    添加到@Mayank 答案,您可以像这样运行原始 SQL 并传递参数

    $result = DB::select('select distinct... where coursedetails.courseID = ? ', [$courseID]);
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-02-13
      • 2010-09-27
      • 1970-01-01
      • 1970-01-01
      • 2019-03-21
      • 1970-01-01
      相关资源
      最近更新 更多