U wilt zoiets als dit doen:
SELECT grade
FROM Users
WHERE id IN (
SELECT id
FROM Users
GROUP BY grade
HAVING COUNT( grade ) = 1
) AND subject = 'english'`
Querybuilder heeft een ->whereIn die u zou moeten kunnen gebruiken. Te lui om te testen, maar zoiets zou kunnen werken.
$ids = user::select('id')
->groupBy('grade')
->having('gradecount', '=',1)
->get();
$grades = user::select('grade')
->whereIn('id', $ids)
->where('subject', 'english')
->get();