• 回答数

    2

  • 浏览数

    172

QQ荔枝蜜
首页 > 考试培训 > sql考试题

2个回答 默认排序
  • 默认排序
  • 按时间排序

圆满的满

已采纳

 ,   from SPJ T1,P t2 where t1.零件代码 = 

 pname from P where pname like '%钉'

 count(jno) from J t1,SPJ t2,S t3 where  = t2.供应商代码 and t2.工程项目代码 = 

 sname, city from J t1, SPJ t2,S t3 where  = t2.供应商代码 and t2.工程项目代码 = 

 count(weight)/count(pno), color from P group by color

 sname,  city from P t1,SPJ t2,S t3 where  = t2.供应商代码 and t2.零件代码 =  and color = '黑色'

 min(weight), pname, color from p

 into S(sno, sname, status, city)values('001','科技园','1','北京');

 from P where color = '蓝色'

sql考试题

222 评论(15)

古董的杂货铺

--1.分别查询学生表和学生修课表中的全部数据。SELECT * FROM student--查询学生表SELECT * FROM course--查询课程表--2.查询成绩在70到80分之间的学生的学号、课程号和成绩。SELECT Sno 学号,Cno 课程号,Grade 成绩FROM SCWHERE Grade BETWEEN 70 AND 80--3.查询C01号课程成绩最高的分数SELECT TOP 1 Grade FROM SC WHERE Cno='C01' ORDER BY Grade DESC--降序DESC,升序ASC--4.查询学生都选修了哪些课程,要求列出课程号。SELECT Cname AS 学生选修的课程,Cno AS 课程号FROM courseWHERE Cno IN(SELECT DISTINCT Cno FROM SC)--DISTINCT用来去除重复--5.查询Northwind数据库中orders表的OrderID、CustomerID和OrderDate,--并将最新的定购日期(OrderDate)列在前边。USE NorthwindGOSELECT OrderID,CustomerID,OrderDate FROM orders ORDER BY OrderDate DESC--降序DESC,升序ASC--6.查询Northwind数据库中orders表的ShipCountry列以B,C,D,F --//ShipCountry BCDF--开始且第三个字符为"a"的OrderID、CustomerID和ShipCountry的信息。//OrderID、CustomerID第三个字符为"a"USE NorthwindGOSELECT OrderID,CustomerID,ShipCountry FROM orders WHERE ShipCountry LIKE '[BCDF]_a%'--_下划线表示任意一个字符,%表示一个或多个字符--7.查询Northwind数据库中orders表的ShipCountry列不以A,B,C,D,E,F开始且最后一个字--母是"a"的OrderID、CustomerID和ShipCountry的信息。USE NorthwindGOSELECT OrderID,CustomerID,ShipCountry FROM orders WHERE ShipCountry LIKE '[^ABCDEF]%a'--8.查询修了C02号课程的所有学生的平均成绩、最高成绩和最低成绩。SELECT AVG(Grade) 平均成绩,MAX(Grade) 最高成绩,MIN(Grade) 最低成绩FROM SC WHERE Cno='C02' --9.统计每个系的学生人数。SELECT Sdept 系别,COUNT(*) 人数FROM student WHERE Sdept IN(SELECT DISTINCT Sdept FROM student) GROUP BY Sdept--10.统计每门课程的修课人数和考试最高分。SELECT Cname 课程名,COUNT(*) 修课人数,MAX(Grade) 考试最高分FROM SC,courseWHERE IN(SELECT DISTINCT Cno FROM SC ) AND BY .统计每个学生的选课门数,并按选课门数的递增顺序显示结果。SELECT 学生姓名, 学生学号,COUNT() 选课门数FROM student inner join SC ON BY BY COUNT() ASC--12.统计选修课的学生总数和考试的平均成绩。SELECT COUNT(DISTINCT(Sno)) AS 学生总数,AVG(Grade) AS 平均成绩FROM SC --//用DISTINCT消除重复的行--13.查询选课门数超过2门的学生的平均成绩和选课门数。SELECT () 平均成绩,COUNT() 选课门数FROM SC --内联接join或inner join,内联系是比较运算符,只返回符合条件的行 JOIN Student ON ( = ) JOIN Course ON ( = )GROUP BY COUNT(distinct ) >2--分组条件--14.列出总成绩超过200分的学生,要求列出学号、总成绩。SELECT Sno 学号,SUM(Grade) 总成绩FROM SCGROUP BY SnoHAVING SUM(Grade)>200--15.查询pubs数据库的titles表中每类图书的平均价格超过元的书的类型(Type)、--平均价格和最高价格。USE pubsGOSELECT Type AS 书的类型,AVG(price) AS 平均价格,MAX(price) AS 最高价格FROM titlesGROUP BY TypeHAVING AVG(price)>.查询pubs数据库的titles表中每类图书中图书的数目超过3本的图书的总价格。USE pubsGOSELECT 图书类型=Type,图书的数目=count(Type),图书的总价格=SUM(price)FROM titlesGROUP BY TypeHAVING count(Type)>3--17.查询选修了c02号课程的学生的姓名和所在系。SELECT Sname 学生姓名,Sdept 所在系, AS 选修课程FROM studentinner join SC ON 'C02'--18.查询成绩80分以上的学生的姓名、课程号和成绩,并按成绩的降序排列结果。SELECT Sname 学生姓名, 课程号, 成绩FROM studentinner join SC ON 内连接表SC查询WHERE >80ORDER BY DESC--19.查询计算机系男生修了"数据库基础"的学生的姓名、性别、成绩。SELECT Sname 姓名,Ssex 性别, 成绩FROM studentinner join SC ON Cno IN(SELECT Cno FROM course WHERE Cname='数据库基础') --显示成绩的条件AND --显示成绩的学生的学号WHERE Sdept='计算机系' AND Ssex='男' --20.查询哪些学生的年龄相同,要求列出年龄相同的学生的姓名和年龄。--这题使用到了表的自连接,所以需要给表取两个别名,如A和BSELECT 年龄相同的学生的姓名, 年龄FROM student A inner join student B ON IN(SELECT Sage FROM student WHERE AND !=)GROUP BY BY .查询哪些课程没有人选,要求列出课程号和课程名。SELECT Cno AS 课程号,Cname AS 课程名FROM courseWHERE Cno NOT IN(SELECT DISTINCT FROM SC)--22.查询有考试成绩的所有学生的姓名、修课名称及考试成绩--要求将查询结果放在一张新的永久表(假设新表名为new-sc)中。SELECT AS 有考试成绩的学生的姓名, AS 修课名称, AS 考试成绩INTO [new_sc] --将查询结果放入新表new_sc中FROM student,course,SCWHERE IS NOT NULL AND AND .分别查询信息系和计算机系的学生的姓名、性别、修课名称、修课成绩,--并要求将这两个查询结果合并成一个结果集,--并以系名、姓名、性别、修课名称、修课成绩的顺序显示各列。--//此题用到了并union查询SELECT Sdept 系名,Sname 姓名,Ssex 性别, 修课名称, 修课成绩FROM student inner join SC ON join course ON Sdept='信息系'UNION SELECT Sdept 系名,Sname 姓名,Ssex 性别, 修课名称, 修课成绩FROM student inner join SC ON join course ON Sdept='计算机系'或select sdept, sname,ssex,cname,grade from student,sc,coursewhere and and (sdept='信息系' or sdept='计算机系')--24.用子查询实现如下查询:--(1) 查询选修了C01号课程的学生的姓名和所在系。SELECT Sname AS 选修了C01号课程的学生的姓名,Sdept AS 所在系FROM studentWHERE Sno IN(SELECT Sno FROM SC WHERE Cno='C01')--(2) 查询数学系成绩80分以上的学生的学号、姓名。SELECT Sno AS 数学系成绩80分以上的学生的学号,Sname AS 姓名FROM studentWHERE Sno IN(SELECT Sno FROM SC WHERE Grade>80) AND Sno IN(SELECT Sno FROM student WHERE Sdept='数学系')--(3) 查询计算机系学生所选的课程名.SELECT Cname AS 计算机系学生所选的课程名FROM courseWHERE IN(SELECT DISTINCT Cno FROM SC WHERE IN(SELECT Sno FROM student WHERE Sdept='计算机系'))--25.将计算机系成绩高于80分的学生的修课情况插入到另一张表中,分两种情况实现://////////////?????/--(1) 在插入数据过程中建表。--使用SELECT INTO插入数据的方法,是在插入数据的过程中建立新表SELECT AS 学生名字, AS 选修课程, AS 课程编号INTO [SC_Info1]--将计算机系成绩高于80分的学生的修课情况插入到表SC_Info1中FROM student,course,SCWHERE '计算机系' AND >80 AND AND (2) 先建一个新表,然后再插入数据。--创建表SC_Info2CREATE TABLE SC_Info2( Sname char(7), Cname char(20), Cno char(10))--往表SC_info2插入查询得到的结果INSERT SC_Info2SELECT AS 学生名字, AS 选修课程, AS 课程编号FROM student,course,SCWHERE '计算机系' AND >80 AND AND .删除修课成绩小于50分的学生的修课记录DELETE SC WHERE Grade<50 OR Grade IS NULL--27.将所有选修了"c01"课程的学生的成绩加10分。UPDATE SC SET Grade=Grade+10WHERE Cno='C01'

176 评论(10)

相关问答