我在学生和系之间有 belongsToMany 关系。 现在,我要获取系的subject_id为null的所有学生系。我在下面的代码,但它给我以下错误
SQLSTATE [23000]:违反完整性约束:1052 where子句中的列'id'不明确(SQL:
departments
中的select *其中subject_id
为空且存在(select {from {{1 }}students
上的department_student
内部联接。students
=id
。department_student
其中student_id
。departments
= {{1} }。id
和department_student
= 16且department_id
。id
为空))
students
任何帮助将不胜感激
答案 0 :(得分:0)
您应在引用id
的地方指定表名,以避免产生歧义。
$departments=Department::where('subject_id','=',null)
->whereHas('students',function($student){
$student->where('student.id',Auth::id()); //Notice the student.id instead of id
})->get();