求一条SQL语句的拼写
班级表
班级ID 班级名
学生表
学生ID 学生名
中间表
ID 班级ID 学生ID
也就是用这个中间表来查询出一个班有多少个学生,可有一个学生属于多个班级。
假设:班级甲 有张三,李四,王五三个学生 我想在显示的时候
班级甲 张三,李四,王五 这样可以吗?
[解决办法]
-->测试数据if object_id('classInfo')is not nulldrop table classInfogocreate table classInfo(cid int ,className varchar(20))insert into classInfo values(1,'班级甲');insert into classInfo values(2,'班级乙')if object_id('studentInfo')is not nulldrop table studentInfogocreate table studentInfo(sid int ,stuName varchar(20))insert into studentInfo values(1,'张三');insert into studentInfo values(2,'李四');insert into studentInfo values(2,'王五')if object_id('middleInfo')is not nulldrop table middleInfogocreate table middleInfo(id int ,cid int ,sid int)insert into middleInfo values(1,1,1);insert into middleInfo values(2,1,2);insert into middleInfo values(3,1,3);insert into middleInfo values(4,2,1)-->测试查询select c.className,d.stuNamefrom (select a.className,b.sid from classinfo a join middleinfo b on a.cid=b.cid)c join studentInfo d on d.sid=c.sid-->测试结果----------- --------------/*className stuName 班级甲 张三 班级甲 李四 班级甲 王五 班级乙 张三*/
[解决办法]