读书人

两道sql题求各位帮忙,该如何处理

发布时间: 2012-05-28 17:59:33 作者: rapoo

两道sql题,求各位帮忙
1.设有"学生Student(sID,sName)","课程Course(cID,cName)","选课StudentCourse(scID,sID,cID)" 这三个表。一个学生可以选修0..n门课,一门课也可以被0..n个学生选修。
1):请用一条SQL语句找出选修了所有课程的学生姓名。

2.在"信息表Info(infoID,infoTitle)"中,infoID是自增列,但Info表中的数据进行过删除,即infoID不是连续的。
1):请用一条SQL语句找出按infoID升序排列,现在排在第100~120位置的那20条数据


[解决办法]

SQL code
--1select b.* from (  select sID  group by sID  having count(cID) = (select count(1) from Course)) a inner join Student b on a.sID = b.sID--2;with t as ( select row_number() over (order by infoID) Row,infoID,infoTitle from Info)select * from t where Row>=100 and Row<120 

读书人网 >SQL Server

热点推荐