Be part of JetBrains PHPverse 2026 on June 9 – a free online event bringing PHP devs worldwide together.

demonz's avatar

Rewrite the query builder statement

Hi guys , my code didn't work can you correct it should be select * from courses where course_id doesn't exists in batches and course_interest table.

$courses = DB::table('courses')
           ->whereNotExists(function ($query) {
               $query->select('course_id')
                     ->from('batches')
                     ->whereColumn('batches.course_id', 'courses.id');
           })
           ->whereNotExists(function ($query) {
            $query->select('course_id')
                  ->from('course_interests')
                  ->whereColumn('course_interests.user_id', Auth::id());
                })
           ->get();
0 likes
4 replies
Sinnbeck's avatar
Sinnbeck
Best Answer
Level 102

This is wrong. WhereColumn compares columns

->whereColumn('course_interests.user_id', Auth::id());
//should be
>where('course_interests.user_id', Auth::id());
2 likes

Please or to participate in this conversation.