sql语句,求大神,关于查询 选了某课程的所有学生的信息

qq_33411563 2016-04-08 10:44:05
有3个表,students(sno,ssex,....),stuclass(courseid,sno),class(courseid,coursename)

怎么查某课程下的所有学生信息。
select * from students where sno in(select stuclass.sno from stuclass,class where stuclass.courseid=class.courseid and class.coursename='密码学')
这句话为什么查不到
...全文
1540 14 打赏 收藏 转发到动态 举报
写回复
用AI写文章
14 条回复
切换为时间正序
请发表友善的回复…
发表回复
Poppy_xiao 2019-07-10
  • 打赏
  • 举报
回复
我根据你的SQL语句写的 是可以查询出来的,
qq_33411563 2016-04-08
  • 打赏
  • 举报
回复
是分感谢!!
qq_33411563 2016-04-08
  • 打赏
  • 举报
回复
请问怎么能把列名自定义一下?
唐诗三百首 2016-04-08
  • 打赏
  • 举报
回复

select a.*,
          '课程名'=c.coursename
 from students a
 inner join stuclass b on a.sno=b.sno
 inner join class c on b.courseid=c.courseid
 where c.coursename='密码学'
qq_33411563 2016-04-08
  • 打赏
  • 举报
回复
select a.*,'密码学'
from students a
inner join stuclass b on a.sno=b.sno
inner join class c on b.courseid=c.courseid
where c.coursename='密码学'
唐诗三百首 2016-04-08
  • 打赏
  • 举报
回复
请问students表与stuclass表应怎样关联? students.SNO的值无法与stuclass.SNO的值匹配上喔, 一个是6位数,一个是8位数.
qq_33411563 2016-04-08
  • 打赏
  • 举报
回复
。。。我发现了,sno更本不一样我擦 辛苦你了
qq_33411563 2016-04-08
  • 打赏
  • 举报
回复
找不到记录呢,。
qq_33411563 2016-04-08
  • 打赏
  • 举报
回复
恩 问题已经解决了 谢谢你啦
qq_33411563 2016-04-08
  • 打赏
  • 举报
回复


这是我三个表的内容
唐诗三百首 2016-04-08
  • 打赏
  • 举报
回复
引用 3 楼 qq_33411563 的回复:
不行。还是和我的语句一样找不到记录=.=
那应该是没有学生选修密码学这门课程, 如下SQL查询所有学生的选修情况,

select a.*, c.coursename
 from students a
 inner join stuclass b on a.sno=b.sno
 inner join class c on b.courseid=c.courseid
qq_33411563 2016-04-08
  • 打赏
  • 举报
回复
不行。还是和我的语句一样找不到记录=.=
qq_33411563 2016-04-08
  • 打赏
  • 举报
回复
求大神
唐诗三百首 2016-04-08
  • 打赏
  • 举报
回复
try this,

select a.*
 from students a
 inner join stuclass b on a.sno=b.sno
 inner join class c on b.courseid=c.courseid
 where c.coursename='密码学'

34,587

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧