请教:北京华建集团SQL面试题第1大题第1小题如何解答?【题目描述】1.已知关系模式:S (SNO,SNAME) 学生关系。SNO 为学号,SNAME 为姓名C (CNO,CNAME,CTEACHER) 课程关系。CNO 为课程号,CNAME 为课程名,CTEACHER 为任课教师SC(SNO,CNO,SCGRADE) 选课关系。SCGRADE 为成绩要求实现如下5个处理: 1. 找出没有选修过“李明”老师讲授课程的所有学生姓名

题目
请教:北京华建集团SQL面试题第1大题第1小题如何解答?

【题目描述】

1.已知关系模式:

S (SNO,SNAME)                      学生关系。SNO 为学号,SNAME 为姓名

C (CNO,CNAME,CTEACHER) 课程关系。CNO 为课程号,CNAME 为课程名,CTEACHER 为任课教师

SC(SNO,CNO,SCGRADE)       选课关系。SCGRADE 为成绩

要求实现如下5个处理:

 1. 找出没有选修过“李明”老师讲授课程的所有学生姓名

 2. 列出有二门以上(含两门)不及格课程的学生姓名及其平均成绩

 3. 列出既学过“1”号课程,又学过“2”号课程的所有学生姓名

 4. 列出“1”号课成绩比“2”号同学该门课成绩高的所有学生的学号

 5. 列出“1”号课成绩比“2”号课成绩高的所有学生的学号及其“1”号课和“2”号课的成绩

 


相似考题
参考答案和解析
【参考答案分析】: 1.找出没有选修过“李明”老师讲授课程的所有学生姓名 --实现代码:Select Sname As 学生姓名 From s Where Not Exists (Select * From c, Sc Where c.Cno = Sc.Cno And Cteacher = '李明' And Sc.Sno = s.Sno);Select Sname As 学生姓名 From s Where Sno Not In (Select Sno From c, Sc Where c.Cno = Sc.Cno And Cteacher = '李明');2. 列出有二门以上(含两门)不及格课程的学生姓名及其平均成绩 --实现代码:Select s.Sno As 学生学号, s.Sname As 学生姓名, Avg(Sc.Scgrade) As 平均成绩 From s, Sc Where Sc.Sno = s.Sno And Sc.Sno In (Select Sc.Sno From Sc Where Sc.Scgrade < 60 Group By Sc.Sno Having Count(*) > 2) Group By s.Sno, s.Sname;3. 列出既学过“01”号课程,又学过“02”号课程的所有学生姓名 --实现代码:select s.sno as 学生学号,s.sname as 学生姓名 from s where sno in(select sc.sno as 学生学号 from c,sc where c.cno=sc.cno and c.cno in('01','02') group by sno having count(distinct sc.cno)=2);4. 列出“01”号课成绩比“02”号同学该门课成绩高的所有学生的学号 --实现代码:select sc1.sno as 学生学号 from sc as sc1,c as c1,sc as sc2,c as c2where sc1.cno=c1.cno and c1.cno='01' and sc2.cno=c2.cno and c2.cno='02'and sc1.scgrade>sc2.scgrade group by sc1.sno;5. 列出“01”号课成绩比“02”号课成绩高的所有学生的学号及其“01”号课和“02”号课的成绩 --实现代码:select sc1.sno as 学生学号, sc1.scgrade as no1grade ,sc2.scgrade as no2gradefrom sc as sc1,c as c1,sc as sc2,c as c2where sc1.cno=c1.cno and c1.cno='01' and sc2.cno=c2.cno and c2.cno='02'and sc1.scgrade>sc2.scgrade group by sc1.sno;

答案是:
1.找出没有选修过“李明”老师讲授课程的所有学生姓名
--实现代码:
Select Sname As 学生姓名
  From s
Where Not Exists (Select *
          From c, Sc
         Where c.Cno = Sc.Cno
           And Cteacher = '李明'
           And Sc.Sno = s.Sno);

Select Sname As 学生姓名
  From s
Where Sno Not In (Select Sno
                     From c, Sc
                    Where c.Cno = Sc.Cno
                      And Cteacher = '李明');

2. 列出有二门以上(含两门)不及格课程的学生姓名及其平均成绩

  --实现代码:
Select s.Sno As 学生学号, s.Sname As 学生姓名, Avg(Sc.Scgrade) As 平均成绩
  From s, Sc
Where Sc.Sno = s.Sno
   And Sc.Sno In (Select Sc.Sno
                    From Sc
                   Where Sc.Scgrade < 60
                   Group By Sc.Sno
                  Having Count(*) > 2)
Group By s.Sno, s.Sname;

3. 列出既学过“01”号课程,又学过“02”号课程的所有学生姓名

  --实现代码:
select s.sno as 学生学号,s.sname as 学生姓名 from s where sno in(select sc.sno as 学生学号 from c,sc where c.cno=sc.cno and c.cno in('01','02') group by sno having count(distinct sc.cno)=2);

4. 列出“01”号课成绩比“02”号同学该门课成绩高的所有学生的学号

  --实现代码:
select  sc1.sno as 学生学号 from sc as sc1,c as c1,sc as sc2,c as c2
where sc1.cno=c1.cno and c1.cno='01' and sc2.cno=c2.cno and c2.cno='02'
and sc1.scgrade>sc2.scgrade group by sc1.sno;

5. 列出“01”号课成绩比“02”号课成绩高的所有学生的学号及其“01”号课和“02”号课的成绩

  --实现代码:
select  sc1.sno as 学生学号, sc1.scgrade as no1grade ,sc2.scgrade as no2grade
from sc as sc1,c as c1,sc as sc2,c as c2
where sc1.cno=c1.cno and c1.cno='01' and sc2.cno=c2.cno and c2.cno='02'
and sc1.scgrade>sc2.scgrade group by sc1.sno;
更多“请教:北京华建集团SQL面试题第1大题第1小题如何解答? 【题目描述】 1.已知关系模式: S (SNO,SNAME)学生关系。SNO 为学号,SNAME 为姓名 C (CNO,CNAME,CTEACHER)课程关系。CNO 为课程号,CNAME 为课程名,CTEACHER 为任课教师 SC(SNO,CNO,SCGRADE)选课关系。SCGRADE 为成绩 要求实现如下5个处理: 1. 找出没有选修过李明老师讲授课程的所有学生姓名 2. 列出有二门以”相关问题
  • 第1题:

    第 15~16 题基于以下说明。 设有三个关系:

    学生关系S(SN0,SNAME,AGE,SEX)(分别代表学生的学号、姓名、年龄、性别)

    学习关系SC(SN0,CNO,GRADE)(分别代表学生的学号、课程编号、成绩)

    课程关系C(CN0,CNAME,TEACHER)(分别代表课程的编号、课程名、任课教师)

    第15题:下列不能实现与关系代数表达式Πsname(σcname=\'DB\' )相同查询的SQL命令是( )。

    A.SELECT SNAME FROM S,SC,C WHERE S.SN0=SC.SNO AND SC.CNO=C.CNO AND CNAME="DB"

    B.SELECT SNAME FROM S WHERE SNO IN(SELECT SNO FROM SC,C WHERE SC.CNO=C.CNO AND CNAME="DB")

    C.SELECT SNAME FROM S WHERE SNO IN(SELECT SNO FROM SC WHERE CNO IN ( SELECT CNO FROM C WHERE CNAME="DB"))

    D.SELECT SNAME FROM S,C WHERE CNAME="DB"


    正确答案:D
    用自然连接和子查询均能正确地表达题目中的关系代数表达式,选项D中没有自然连接的条件,所以是错误的。

  • 第2题:

    第( 36 ) - ( 37 )题基于学生一选课一课程数据库中的三个基本表:

    学生信息表: STUDENT ( sno, sname, sex, age, dept ) 主码为 sno

    课程信息表: CDLIRSB ( cno, cname, teacher ) 主码为 cno

    学生选课信息表: SC ( sno, cno, grade ) 主码为( sno, cno )

    ( 36 )“ 查询没有学习成绩的学生的学号和课程号 ” 的 SQL 语句是

    A ) SELECT snc, cno FROM SC WHERE grade=NULL

    B ) SELECT sno, cno FROM SC WHERE grade IS' '

    C ) SELECT sno. cno FROM SC WHERE grade IS NULL

    D ) SELECT sno. cno FROM SC WHERE grade =' '


    正确答案:C

  • 第3题:

    关系模式Student(sno,Sname,Cno,Cname,Grade,Tname,Taddr)的属性分别表示学号、学生姓名、课程号、课程名、成绩、任课教师名和教师地址。其中,一个学生可以选若干门课程,一个教师可以讲授若干门课程,一门课程可以由多个教师讲授,对于同一门课程,学生只能选定一个教师讲授的课程,教师不会重名。下列有关关系模式Student的分解中,是无损联接并保持函数依赖的是——。

    A.{(Sno,Sname,Cno,rname,raddr),(sno,Sname,Cno,Cnarne,Grade)}E:INF

    B.{(Sno,Sname),(sn0,Cno,Grade,Tname,。Taddr),(Cno,Cname)∈2NF

    C.{(Sno,Sname),(sno,Cno,Grade),(rI'name,Taddr),(Cno,Cname,)∈3NF

    D.{(Sno,Sname),(Sno,Cno,Grade),(Tname,Taddr),(Tname,Cno),(Cno,Cname)}∈BCNF


    正确答案:B
    解析:关系模式Student(Sno,Shame,Cno,Cname,Grade, rname。Taddr)的候选关键字有1个,为(Sno,Cno)。最小函数依赖集中有5个函数依赖。由于存在部分依赖现象,因此该关系模式属于lNF范式,分解p={(Sno,Shame),(Sn0,Cno,Grade,Tname,Taddr),(Cno,Cname)}∈2NF,并且是无损联接及保持函数依赖。

  • 第4题:

    某数据库中有关系Student(Sno,Sname,Ssex,Sage,Sdept),各属性分别表示学号,姓名,性别,年龄以及所在的系;Course(Cno,Cname,Ccredit)属性分别表示课程号,课程名,学分;SC(Sno, Cno,Grade)为学生选课表,各属性分别表示为学号,课程号和分数;完成下列的SQL语句:


    正确答案:

  • 第5题:

    数据库中有学生表Student(Sno,Sname,Ssex,Sage,Sdept),各属性分别表示为学号,姓名,性别,年龄,所在系;学生选课表SC(Sno,Cno,Grade),各属性分别表示为学号,课程号以及成绩;课程表 Course(Cno,Cname,Cpno,Ccredit),各属性为课程号.课程名,先行课,学分。(先行课的意思是,比如课程号1有先行课5,说明要选课程1,就必须先选课程5) 。用以上各表完成查询选修了全部课程的学生姓名的语句补充:

    SELETE Sname

    FROM

    5.


    正确答案:NOTEXISTS
    NOTEXISTS

  • 第6题:

    已知关系模式:

    S (SNO,SNAME) 学生关系。SNO 为学号,SNAME 为姓名

    C (CNO,CNAME,CTEACHER) 课程关系。CNO 为课程号,CNAME 为课程名,CTEACHER 为任课教师

    SC(SNO,CNO,SCGRADE) 选课关系。SCGRADE 为成绩

    要求实现如下5个处理:

    1. 找出没有选修过“李明”老师讲授课程的所有学生姓名

    2. 列出有二门以上(含两门)不及格课程的学生姓名及其平均成绩

    3. 列出既学过“1”号课程,又学过“2”号课程的所有学生姓名

    4. 列出“1”号课成绩比“2”号同学该门课成绩高的所有学生的学号

    5. 列出“1”号课成绩比“2”号课成绩高的所有学生的学号及其“1”号课和“2”号课的成绩


    正确答案:
     

  • 第7题:

    试题基于如下三个关系,其中学生关系student的主码是sno,课程关系course的主码是cno,选课关系SC的主码是(sno,cno)。

    查找学生姓名及其所选修课程的课程号和成绩,正确的SQL语句是( )。

    A)SELECT sname FROM student,SELECT cno,grade FROM sc

    WHERE student.sno=sc.sno

    B)SELECT sname, cno,grade FROM student,course

    WHERE student.sno=course.cno

    C)SELECT sname, cname,grade FROM student,course, sc

    WHERE student.sno=sc.Snoand sc.cno=course.cno

    D)SELECT sname,cno, grade FROM student,sc

    WHERE student.sno=sc.sno


    正确答案:D
    要查询学生姓名,选修课程号及对应成绩,在同一SELECT子句后应包含这三个字段,故选项A)错误;而学生学号是用来关联sc与student表,故在where子句中应有“student.sno=sc.sno”,故选项B)错误;对于选项C),它没有查询课程号,而是查询的课程名,所以错误。

  • 第8题:

    设有关系S(SNO,SNAME,SEX),C(CNO,CNAME),SC(SNO,CNO,GRADE)。其中SNO为学生号,SNAME为学生姓名,SEX为性别,CNO为课程号,CNAME为课程名。要查询选修“计算机”课的全体女学生姓名的SQL语句是SELECTSNAMEFROMS,C,SC WHERE子句。这里WHERE子句的内容是

    A.S.SNO=SC.SNO andSEX='女'andCNAME='计算机'

    B.S.SNO=SC.SNO andC.CNO=SC.CNO andCNAME='计算机'

    C.SEX='女'andCNAME='计算机'

    D.S.SNO=SC.SNO andC.CNO=SC.CNO andSEX='女'andCNAME='计算机'


    正确答案:D
    解析:本题涉及三个表的连接查询,需要求的是WHERE后面的连接条件,首先连接S与SC表,连接条件为S.SNO=SC.SNO;然后再连接C表和SC表,连接条件为C.CNO=SC.CNO。这样就可以将三个表连接起来,但是分析题意,同时还要在连接后所形成的表中满足SEX='女'和CNAME='计算机'。通过以上分析,连接是同时满足的关系,故应用'AND'连接。因此,WHERE子句内容应为:S.SNO=SC.SNOandC.CNO=SC.CNOandSEX='女'andCNAME='计算机'。

  • 第9题:

    ( 11 ) “ 学生 - 选课 - 课程 ” 数据库中的三个关系是:

    S ( sno,shame,sex,age,dept ), C ( cno,cname,teacher ), SC ( sno,cno,grade )

    查找选修 “ 数据库技术 ” 课程的学生的姓名和成绩,用关系代数表达式可表示为


    正确答案:

  • 第10题:

    设有关系S(SNO,SNAME,SEX),C(CNO,CNAME),SC(SNO,CNO,GRADE)。其中SNO为学生号,SNAME为学生姓名,SEX为性别,CNO为课程号,CNAME为课程名。要查询选修“计算机”课的全体女学生姓名的SQL语句是SELECTSNAMEFROMS,C,SCWHERE子句。这里WHERE子句的内容是( )。

    A.S.SNO=SC.SNOandSEX=‘女′andCNAME=‘计算机′
    B.S.SNO=SC.SNOandC.CNO=S
    C.CNOandCNAME=‘计算机′C.SEX=‘女′andCNAME=‘计算机′
    D.S.SNO=SC.SNOandC.CNO=SC.CNOandSEX=‘女′andCNAME=‘计算机′

    答案:D
    解析:
    本题涉及三个表的连接查询,需要求的是WHERE后面的连接条件,首先连接S与SC表,连接条件为S.SNO=SC.SNO;然后再连接C表和SC表,连接条件为C.CNO=SC.CNO。这样就可以将三个表连接起来,但是分析题意,同时还要在连接后所形成的表中满足SEX=‘女′和CNAME=‘计算机′。通过以上分析,连接是同时满足的关系,故应用‘AND′连接。因此.WHERE子句内容应为:S.SNO=SC.SNOandC.CNO=SC.CNOandSEX=‘女′andCNAME=‘计算机′。

  • 第11题:

    假定学生关系是S(SNO,SNAME,SEX,AGE),其属性是学号,姓名,性别,年龄;课程关系是C(CNO,CNAME),属性是课程号,课程名;学生选课关系是SC(SNO,CNO,GRADE),属性是学号,课程号,成绩。要查找选修“COMPUTER”课程的“女”学生姓名,将涉及到关系有()、()、(),SQL语句为:SELECT SNAME FROM WHERE S.SNO=SC.SNO AND SC.CNO=C.CNO AND();查询所有课程都及格的学生学号,姓名,SQL语句为:SELECT SNO, SNAME FROM()WHERE() (SELECT * FROM SC WHERE S.SNO=SC.SNO AND ())。


    正确答案:s;sc;c;CNAME=‘computer’and SEX=‘女’;S;NOT EXISTS;GRADE<60

  • 第12题:

    单选题
    学生一选课一课程数据库中的三个基本表: 学生信息表:STUDENT(sno,sname,sex,age,dept)主码为sno 课程信息表:CDLIRSB(cno,cname,teacher)主码为cno 学生选课信息表:SC(sno,cno,grade)主码为(sno,cno) “查询没有学习成绩的学生的学号和课程号”的SQL语句是()
    A

    SELECT snc,cno FROM SC WHERE grade=NULL

    B

    SELECT sno,cno FROM SC WHERE gradeIS’’

    C

    SELECT sno.cno FROM SC WHERE gradeISNULL

    D

    SELECT sno.cno FROM SC WHERE grade=’ ’


    正确答案: D
    解析: 暂无解析

  • 第13题:

    假定学生关系是S(SNO,SNAME,SEX,AGE)课程关系是C(CNO,CNAME,CREDIT)学生选课关系是SC(SNO,CNO,GRADE)要查找选修“数据库”课程的女学生的姓名,将涉及到的关系( )

    A. S

    B. C,SC

    C. S,SC

    D. S,C,SC


    参考答案:D

  • 第14题:

    关系模式Student(Sno,Sname,Cno,Cname,Grade,Tname,Taddr)的属性分别表示学号,学生姓名,课程号,课程名,成绩,任课教师名和教师地址。其中一个学生可以选若干门课,一个教师可以讲授若干门课,一门课程可以由多个教师讲授,对于同一门课程,学生只能选定一个教师讲授一门课,教师不会重名。下列对关系的分解正确的并且是无损连接及保持函数依赖的是______。

    A.{(Sno,Sname,Cno,Tname,Taddr),(Sno,Sname,Cno,Cname,Grade))属于2NF

    B.{(Sno,Sname),(Sno,Cno,Grade Tname,Taddr),(Cno,Cname)}属于2NF

    C.{(Sno,Sname),(Sno,Cno,Grade),(Tname,Taddr),(Cno,Cname)}属于3NF

    D.{(Sno,Sname),(Sno,Cno,Grade),(Tname,Taddr),(Tname,Cno),(Cno,Cname)}属于3NF


    正确答案:B
    解析:显然A中存在着部分依赖,不是2范式,所以A不是正确答案。根据无损连接分解的判断方法,B是无损连接的,并且也保持了所有的函数依赖,且B的3个子模式都不存在部分依赖情况。

  • 第15题:

    数据库中有三个关系:S(SNO,SNAME,AGE,SEX)SC(SNO,CNO,GRADE)C(CNO,CNAME,TEACHER)查询语句“查询学习全部课程的学生姓名”可用____关系代数表达式表达

    A、ΠSNAME(S⋈SC⋈C)

    B、ΠSNAME(C⋈(ΠSNO,CNO(SC)÷ΠSNO(S)))

    C、ΠSNAME(S⋈(ΠSNO,CNO(SC)÷ΠCNO(C)))

    D、以上均不是


    参考答案:C

  • 第16题:

    设学生S、课程C、学生选课SC的关系模式分别为S(SNO,SNAME,SDEP,SAGE,SADDR)、C(CNO,CNAME,PCNO)以及SC(SNO,CNO,GRADE),与关系代数表达式πSNO,SNAME,GRADE(σCNAME='数据库'(S><SC><C)等价的元组演算表达式为(35)S(U)∧SC(V)∧C(W)∧(36)∧(37)。

    A.

    B.

    C.

    D.


    正确答案:C

  • 第17题:

    以下2题基于以下说明。设有三个关系

    学生关系S(SNO,SNAME,AGE,SEX)(分别代表学生的学号、姓名、年龄、性别)

    学习关系SC(SNO,CNO,GRADE)(分别代表学生的学号、课程编号、成绩)

    课程关系C(CNO,CNAME,TEACHER)(分别代表课程的编号、课程名、任课教师)

    “从学习关系SC中检索无成绩的学生学号”的SQL语句是

    A.SELECT sno FROM sc WHERE grade=NULL

    B.SELECT sno FROM sc WHERE grade IS

    C.SELECT sno FROM sc WHERE grade IS NULL

    D.SELECT sno FROM sc WHERE grade=0


    正确答案:C
    解析:“无成绩”表示grade的值为空值(NULL),空值既不是0也不是空格,所以选项B、D错误。考生要注意SQL中空值的处理及有关表达式的正确写法。

  • 第18题:

    设有关系S(SNO,SNAME,SEX) ,C(CNO,CNAME) ,SC(SNO,CNO) 。其中SNO为学号,SNAME为学生姓名,SEX为性别,CNO为课程号,CNAME为课程名。要查询选修“计算机”课的全体女学生姓名的SQL语句是SELECT sname FROM S,SC,C WHERE子句。这里WHERE子句的内容是

    A.s.sno=sc.sno AND sex=′女′AND cname=′计算机′

    B.s.sno=sc.sno AND c.cno=sc.cno AND cname=′计算机′

    C.sex=′女′AND cname=′计算机′

    D.s.sno=sc.sno AND c.cno=sc.cno AND sex=′女′AND cname=′计算机′


    正确答案:D
    解析:用SQL的SELECT语句完成查询操作时,首先要分析查询结果和查询条件涉及的属性都来自于哪些关系,如果涉及到两个或两个以上的关系,则可以采用自然连接或者子查询来完成。另外,如果涉及到的两个关系没有相同的属性,不能直接进行自然连接,就需要引入第3个关系并与两个关系进行自然连接。本题中,查询选修“计算机”课的全体女学生姓名的操作中涉及到的属性有SNAME、SEX、CNAME,分别来自关系S和C,但S和C这两个关系没有相同的属性,所以还要引入关系SC,分别与关系S和C进行自然连接。还要有选修“计算机”课的“女”学生两个条件。

  • 第19题:

    基于如下叙述: 关系模式 Student(Sno,Sname,Cno, Cname,Grade,Tname,Taddr)的属性分别表示学号,学生姓名、课程号、课程名、任课教师名和教师地址。其中,一个学生可以选修若干门课程,一个教师可以讲授若干门课程,一门课程可以有若干教师讲授,一个学生选修一门课程时必须选定讲授课程的教师,教师不会重名。

    关系模式Student 的候选关键码有_________。

    A.1个,为(Sno,Cno)

    B.1个,为(Sno,Cno,Tname)

    C.2个,为(Sno,Sname,Cno)和(Sno,Cno,Tname)

    D.2个,为(Sno,Sname,Cno)和(Sname,Cno,Tname)


    正确答案:B
    解析:因“一个学生选修一门课程时必须选定讲授课程的教师,教师不会重名”,故候选键为:(Sno,Cno,Tname)。

  • 第20题:

    设有关系S(SNO,SNAME,SEX),C(CNO,CNAME),SC(SNO,CNO)。其中SNO为学号,SNAME为学生姓名,SEX为性别,CNO为课程号,CNAME为课程名。要查询选修“计算机”课的全体女学生姓名的SQL语句是SELECTSnameFROMS,SC,C WHERE子句。这里WHERE子句的内容是

    A.s.sno=sc.sno ANDSex=‘女’ANDCname=‘计算机’

    B.s.sno=sc.sno ANDC.cno=sc.cno ANDCname=‘计算机’

    C.Sex=‘女’ANDCname=‘计算机’

    D.s.sno=sc.sno ANDC.cno=sc.cno ANDSex=‘女’ANDCname=‘计算机’


    正确答案:D
    解析:用SQL的SELECT语句完成查询操作时,首先要分析查询结果和查询条件涉及的属性都来自于哪些关系,如果涉及到两个或两个以上的关系,则可以采用自然连接或者子查询来完成。另外,如果涉及到的两个关系没有相同的属性,不能直接进行自然连接,就需要引入第3个关系并与两个关系进行自然连接。本题中,查询选修“计算机”课的全体女学生姓名的操作中涉及到的属性有SNAME、SEX、CNAME,分别来自关系S和C,但S和C这两个关系没有相同的属性,所以还要引入关系SC,分别与关系S和C进行自然连接。

  • 第21题:

    某学校的学生成绩管理数据库的关系模式如下;

    S(SNO,SNAME,SEX,AGE,DEPT);

    C(CNO,CNAME);

    SC(SNO,CNO,SCORE)

    其中,S表示学生表。它的各字段以此为学号,姓名、性别、年龄和所在学院;C表示课程表,它的各字段依次为课程号、课程名;SC表示成绩表,它的各字段依次为学号、课程号和分数。

    使用SQL语句,查询“计算机学院”所有“男生”的学号,姓名和年龄。

    使用SQL语句,查询选修“计算机网络”课程的学生姓名和分数。

    使用SQL语句,查询所有课程的课程号以及最高分。

    SELECT CNO,MAX(SCORE) FROM SC GROUP BY CNO

    请帮忙给出每个问题的正确答案和分析,谢谢!


    问题 1 答案解析:
    SELECTSNO,SNAME,AGEfromSwhereSEX='男'andDEPT='计算机学院'


    问题 2 答案解析:
    SELECTSNAME,SCOREfromS,SC,CwhereS.SNO=SC.SNOANDSC.CNO=C.CNO


    问题 3 答案解析:
    SELECTCNO,MAX(SCORE)FROMSCGROUPBYCNO


    问题 4 答案解析:
    INSERTINTOC(CNO,CNAME)VALUES(15,'高等数学')

  • 第22题:

    学生一选课一课程数据库中的三个基本表: 学生信息表:STUDENT(sno,sname,sex,age,dept)主码为sno 课程信息表:CDLIRSB(cno,cname,teacher)主码为cno 学生选课信息表:SC(sno,cno,grade)主码为(sno,cno) “查询没有学习成绩的学生的学号和课程号”的SQL语句是()

    • A、SELECT snc,cno FROM SC WHERE grade=NULL
    • B、SELECT sno,cno FROM SC WHERE gradeIS’’
    • C、SELECT sno.cno FROM SC WHERE gradeISNULL
    • D、SELECT sno.cno FROM SC WHERE grade=’ ’

    正确答案:C

  • 第23题:

    学生一选课一课程数据库中的三个基本表:学生信息表:STUDENT(sno,sname,sex,age,dept)主码为sno课程信息表:CDLIRSB(cno,cname,teacher)主码为cno学生选课信息表:SC(sno,cno,grade)主码为(sno,cno)在“查询选修课程号为C04,且成绩在80分以上的所有学生的学号和姓名”的SQL语句中,将使用的表有()

    • A、仅STUDENT
    • B、仅STUDENT和COURSE
    • C、仅SSTUDENT和SC
    • D、STUDENT、COURSE和SC

    正确答案:C