也就是说用了子查询,一般情况下要用in的方式,而最好不要用等于的方式。
如:有两张表如下:
班级表
学生表
现在要查所有是一年一班的学生在学生表中的全部信息。
那么可用的sql语句如下:
select * from 学生表 where 所属班级ID in (select 班级ID from 班级表 where 班级名称='一年一班');
这里如果把in改成=,那么就会报错,报错内容就是“嵌套查询子查询最多能返回一个记录”。
WHERE 课程编号=(SELECT 课程编号 FROM 课程 WHERE 学分=3)
改成
WHERE 课程编号 IN (SELECT 课程编号 FROM 课程 WHERE 学分=3);