有人知道这个查询会发生什么吗?我要做的是,如果courseID
表中的elective_modules
表中的group_elective_modules
不存在,则打印group_elective_modules
中的所有退出。但我不断收到错误操作数应包含1列
这是我的查询
$alternativeEQuery =
"SELECT elective_modules.courseID,elective_modules.yr
FROM elective_modules
WHERE elective_modules.yr = '$year1'
AND elective_modules.courseID
NOT IN
(SELECT group_elective_modules.moduleID,group_elective_modules.courseName
FROM group_elective_modules
WHERE group_elective_modules.courseName = '$courseTitle'
AND elective_modules.courseID = group_elective_modules.moduleID)";
$alternativeEResult = mysql_query($alternativeEQuery) or die($alternativeEQuery."<br/><br/>".mysql_error());
答案 0 :(得分:4)
此子查询中不能有两列:
(SELECT group_elective_modules.moduleID,group_elective_modules.courseName
FROM group_elective_modules
WHERE group_elective_modules.courseName = '$courseTitle'
AND elective_modules.courseID = group_elective_modules.moduleID)
使用正确的一个,或者添加第二个not in
子句并在那里使用其他列名称。