SQL的嵌套问题

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SQL的嵌套问题相关的知识,希望对你有一定的参考价值。

查询选修了“数据库”的学生的姓名,学号,以及该生选修的所有课程的课程编号,课程名称

学生表(学号,院系,姓名,性别)
选课表(学号,课程编号)
课程表(课程编号,课程名称)

我做的:
SELECT 课程.课程编号,课程名称,学号,姓名
FROM student.课程 JOIN student.选课
ON 课程.课程编号=选课.课程编号
WHERE 学号=
(SELECT 学号 FROM student.选课
WHERE 课程名称='数据库')

消息 207,级别 16,状态 1,第 1 行
列名 '姓名' 无效。

到底出了什么问题??~~~
怎么关联学生表??

但是课本里的可以啊。。~~

SELECT 课程编号,课程名称,姓名,职称
FROM student.课程 JOIN student.教师
ON 课程.责任教师=教师.教师编号

WHERE 责任教师 IN
(SELECT 责任教师 FROM student.教师
WHERE 课程名称='数据库')

select a.学号,a.姓名,c.课程编号,c.课程名称
from 学生表 a,选课表 b,课程表 c
where a.学号=b.学号
and b.课程编号=c.课程编号
and a,学号 in (
select a.学号
from 选课表 a ,课程表 b
where a.课程编号=b.课程标号
and b.课程名='数据库')

用这个试试吧,可能有的逗号是字符下的,执行时有问题你改下。至于你的程序,没看见你关联到学生表啊,怎么就能用学生表的姓名字段呢
参考技术A 你没有关联学生表。姓名是在学生表里面的。所以人提示姓名无效。 参考技术B 建议你用子查询比较好的!连接查询又是方便但是看的死人的!

以上是关于SQL的嵌套问题的主要内容,如果未能解决你的问题,请参考以下文章

SQL的嵌套问题

sql嵌套删除语句

sql语句 嵌套查询 排序

标准SQL嵌套查询语句

求助sql语句,多个join嵌套

SQL 中嵌套条件的语法错误