>有人知道这个查询是怎么回事吗?我正在尝试做的是,如果表中elective_modules
表中courseID
不存在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());
这里的子查询中不能有两列:
(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
子句并在此处使用其他列名。