操作数应包含 1 列 MySQL


Operand should contain 1 column(s) MySQL

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