niusouti.com

有学生、选修和课程三个关系,学生S(学号,姓名,性别….),课程C(课程号,课程名),选修SC(学号,课程号,成绩)。想查询选修2号课程的学生的学号和姓名,则关系运算式

题目
有学生、选修和课程三个关系,学生S(学号,姓名,性别….),课程C(课程号,课程名),选修SC(学号,课程号,成绩)。想查询选修2号课程的学生的学号和姓名,则关系运算式


相似考题
参考答案和解析
更多“有学生、选修和课程三个关系,学生S(学号,姓名,性别….),课程C(课程号,课程名),选修SC(学号,课程号,成绩)。想查询选修2号课程的学生的学号和姓名,则关系运算式 ”相关问题
  • 第1题:

    设有学生表S(学号,姓名,性别,年龄)、课程表 (课程号。课程名,学分)和学生选课表SC(学号,课程号,绩).检索学号、姓名和学生所选课程的课程名和成绩,正确的SQL语句是( )。

    A.SELECT学号,姓名,课程名,成绩FROM S,SC,CWHERE S.学号=SC.学号AND SC.学号=C.学号

    B.SELECT学号,姓名,课程名,成绩 FROM(S JOIN SC ON S.学号=SC.学号)JOIN C0N SC.课程号=C.课程号

    C.SELECT S.学号,姓名,课程名,成绩 FROM S JOIN SC JOIN C ON S.学号=SC.学号 ON SC.课程号=C.课程号

    D.SELECT S.学号,姓名,课程名,成绩 FROM S JOIN SC JOIN c ON SC.课程号=C.课程 号ON S.学号=SC.学号


    正确答案:D
    D。【解析】连接查询中JOIN用来连接两个表,而ON是指定两表连接的关键字。

  • 第2题:

    现有表:s(学号,姓名,性别,年龄),c(课程号,课程名,学分),SC(学号,课程号,成绩)。检索学号、姓名和学生所选课程的课程名和成绩,正确的SQL命令是( )。

    A. SELECT学号,姓名,课程名,成绩FROM S,SC,C; WHERE S.学号=SC.学号AND SC.课程号=C.课程号

    B. SELECT学号,姓名,课程名,成绩; FROM(S JOIN SC ON S.学号=SC.学号)JOIN C ON SC.课程号=C.课程号

    C. SELECT S.学号,姓名,课程名,成绩; FROM S JOIN SC JOIN C ON S.学号=SC.学号ON SC.课程号=C.课程号

    D. SELECT S.学号,姓名,课程名,成绩; FROM S JOIN SC JOIN C ON SC.课程号=C.课程号0N S.学号=SC.学号


    正确答案:D
    用JOIN连接格式连接多个表时JOIN的顺序和ON的顺序应该是相反的,否则会影响到最终的查询结果。

  • 第3题:

    设学生表S、课程表C和学生选课表SC的结构如下:

    S(学号,姓名,年龄,系别)

    C(课程号,课程名)

    SC(学号,课程号,成绩)

    查询学生姓名及所选修课程的课程号和成绩,实现此功能的SELECT语句是______。

    A.SELECTS.姓名,SC课程号,SC成绩FROM S WHERE S.学号=SC.学号

    B.SELECTS.姓名,SC课程号,SC成绩FROM SC WHERE S.学号=SC.成绩

    C.SELECTS.姓名,SC课程号,SC成绩FROMS,SC WHERE S.学号=SC.学号

    D.SELECTS.姓名,SC课程号,SC成绩FROM S,SC


    正确答案:C

  • 第4题:

    设有以下3个表: 学生表STUD(学号,姓名,性别,年龄,专业) 课程表KC(课程号,课程名,选修课号,学分) 学生选课表SC(学号,课程号,成绩) 查询选修了课程名为“数据结构”的学生的姓名的SELECT语句是______。

    A.SELECT 姓名 FROM STUD; WHERE学号SELECT学号FROM SC WHERE 课程号IN; (SELECT课程号FROM KC WHERE 课程名=“数据结构”)

    B.SELECT姓名FROM STUD; WHERE学号IN(SELECT学号FROM SC WHERE 课程号UNION; (SELECT 课程号 FROM KC WHERE 课程名=“数据结构”))

    C.SELECT 姓名 FROM STUD; WHERESELECT课程号FROMKCWHERE课程名=“数据结构”

    D.SELECT姓名FROM STUD; WHERE 学号 IN(SELECT 学号 FROM SC WHERE 课程号 IN; (SELECT课程号FROM KC WHERE 课程名=“数据结构”))


    正确答案:D
    解析:要实现本题的查询要求,需使用嵌套查询。嵌套查询又称为子查询,它可以把一个SELECT-FROM-WHERE查询块嵌入在另一个查询块中。嵌套查询是由内向外进行的。在嵌套查询中,常用谓词IN引导子查询。选项A、B、C的语句不符合嵌套查询的语法结构,只有选项D正确。

  • 第5题:

    设有关系:S(学号,姓名,性别)、C(课程号,课程名)、SC(学号,课程号)。实现查询选修“会计学”课的所有女生姓名的SQL语句是“SELECTFROMS,C,SCWHERE<条件>”。该语句中的<条件>的正确表示是______。

    A.S.学号=SC.学号AND性别=“女”AND课程名=“会计学”

    B.S.学号=SC.学号ANDC.课程号=SC.课程号AND课程名=“会计学”

    C.性别=“女”AND课程名=“会计学”

    D.S.学号=SC.学号ANDC.课程号=SC.课程号;AND性别=“女”AND课程名=“会计学”


    正确答案:D
    解析:要实现本题3个表的连接查询,其连接条件是:连接表s与SC的连接条件是“S.学号=SC.学号”,连接表C与SC的连接表件是“C.课程号=SC.课程号”。同时,还需要满足“性别=“女””和“课程名=“会计学””这两个条件,从而才可以实现查询选修“会计学”课的所有女生的姓名的目的。

  • 第6题:

    三个关系模型:学生(学号,姓名,性别,出生年月),课程(课程号,课程名,学时数)和选修(学号,课程号,成绩),则“学生”关系模型中的主键是【】

    A.学号

    B.姓名

    C.性别

    D.出生年月


    正确答案:A
    [解析]在关系中,能唯一标识元组的属性(或属性集)是关系模式的候选键.从候选键中选做标识元组的属性(或属性集)称为主键.只有学号能唯一标识元组.

  • 第7题:

    设有三个关系:S(S#,SNAME,AGE,SEX)C(C#,CNAME,TEACHER)SC(S#,C#,GRADE) 试用关系代数表达式表示下列查询语句: (1)检索“陈军”老师所授课程的课程号(C#)和课程名(CNAME)。 (2)检索年龄小于20的男学生学号(S#)和姓名(SNAME)。 (3)检索至少选修“陈军”老师所授全部课程的学生姓名(SNAME) (4)检索“李强”同学不学课程的课程号(C#)。 (5)检索至少选修两门课程的学生学号(S#)。 (6)检索全部学生都选修的课程的课程号(C#)和课程名(CNAME)。 (7)检索选修课程包含“陈军”老师所授课程之一的学生学号(S#)。 (8)检索选修课程号为C1和C5的学生学号(S#)。 (9)检索选修全部课程的学生姓名(SNAME)。 (10)检索选修课程包含学号为S2的学生所修课程的学生学号(S#)。 (11)检索选修课程名为“C语言”的学生学号(S#)和姓名(SNAME)。⋈ (σCNAME=’C语言’(C)))))


    正确答案:本题各个查询操作对应的关系代数表达式表示如下:
    (1)∏C#,CNAME(σTEACHER=’陈军’(C))
    (2)∏S#,SNAME(σAGE<20∧SEX=’男’(S))
    (3)∏SNAME(S(∏S#,C#(SC)÷∏C#(σTEACHER=’陈军’(C)))
    (4)∏C#(C)-∏C#(σSNAME=’李强’(S)SC)
    (5)∏S#(σ1=4∧2≠5(SC×SC))
    (6)∏C#,CNAME(C(∏S#,C#(SC)÷∏S#,C#(S)))
    (7)∏S#(SCC#(σTEACHER=’陈军’(C)))
    (8)∏S#,C#(SC)÷∏C#(σC#=’C1’∨C#=’C5’(C))
    (9)∏SNAME(S(∏S#,C#(SC)÷∏C#(C)))
    (10)∏S#,C#(SC)÷∏C#(σS#=’S2’(SC))
    (11)∏S#,SNAME(S(∏S#(SC(σCNAME=’C语言’(C)))))

  • 第8题:

    学生(学号,姓名,性别,专业,班级)课程(课程号,课程名,学分,简介)选修(学号,课程号,成绩)第三个关系的表达式中外键是:()

    • A、学号
    • B、成绩
    • C、学号、成绩
    • D、学号+成绩

    正确答案:C

  • 第9题:

    问答题
    设教学数据库中有四个关系: 教师(教师编号,教师姓名,联系电话) 课程(课程号,课程名,教师编号) 学生(学号,学生姓名,年龄,性别,专业) 选课(学号,课程号,成绩)统计每门课程的学生选修人数(超过10人的课程才统计)。要求显示课程号和人数,查询结果按人数降序排列。

    正确答案: Select 课程号,count(学号)人数 from 选课
    Group by 课程号having count(*)>10 order by 人数 desc
    解析: 暂无解析

  • 第10题:

    单选题
    学生(学号,姓名,性别,专业,班级)课程(课程号,课程名,学分,简介)选修(学号,课程号,成绩)第三个关系的表达式中外键是:()
    A

    学号

    B

    成绩

    C

    学号、成绩

    D

    学号+成绩


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

  • 第11题:

    单选题
    设学生表S(学号,姓名,性别,年龄),课程表C(课程号,课程名,学分)和学生选课表SC(学号,课程号,成绩),检索学号、姓名和学生所选课程名及成绩,正确的SQL命令是(  )。
    A

    SELECT学号,姓名,课程名,成绩FROM S,SC,C
    WHERE S.学号=SC.学号AND SC.学号=C.学号

    B

    SELECT学号,姓名,课程名,成绩
    FROM(S JOIN SC ON S.学号=SC.学号)JOIN C ON SC.课程号=C.课程号

    C

    SELECT S.学号,姓名,课程名,成绩
    FROM S JOIN SC JOIN C ON S.学号=SC.学号ON SC.课程号=C.课程号

    D

    SELECT S.学号,姓名,课程名,成绩
    FROM S JOIN SC JOIN C ON SC.课程号=C.课程号ON S.学号=SC.学号


    正确答案: A
    解析:
    这是一个简单查询语句,用WHERE短语将三个表连接起来。JOIN为超连接查询。

  • 第12题:

    单选题
    在“学生选修课程信息库.mdb”中包含三个表,第1个是“学生信息表”,描述学生的学号、姓名、性别、班级等;第2个是“课程信息表”,描述课程的课程号、课程名、课时数等;第3个表是“课程选修信息表”。为了方便各表之间的联系,第3个表中应包含的最少信息是()。
    A

    姓名、课程名

    B

    学号、姓名、课程号

    C

    学号、课程号

    D

    课程号、课程名、学号


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

  • 第13题:

    现有某高校的选修课记录(SC):学号、姓名、课程名称、成绩,要查询没有选修课成绩的学生和课程,正确的SQL语句是( )。

    A. SELECT学号,课程号FROM sc WHERE成绩=””

    B. SELECT学号,课程号FROM sc WHERE成绩=NULL

    C. SELECT学号,课程号FROM SC WHERE成绩IS NULL

    D. SELECT学号,课程号FROM SC WHERE成绩


    正确答案:C
    利用空值查询,查询空值时要使用“Is NULL”,而=“”、=NULL都是无效的,因为空值是一个不确定的值,所以不能用“=”进行比较。

  • 第14题:

    基于学生表S和学生选课表SC两个数据库表,它们的结构如下: S(学号,姓名,性别,年龄),其中学号、姓名和性别为C型字段,年龄为N型字段; SC(学号,课程号,成绩),其中学号和课程号为C型字段,成绩为N型字段。 查询同时选修课程号分别为2001和2005课程的学生的学号,正确的命令是( )。

    A. SELECT学号FROM SC WHERE课程号='2001'AND学号IN(SELECT学号FROM SC WHERE课程号='2005’)

    B. SELECT学号FROM SC WHERE课程号='2001'AND学号=(SELECT学号FROM SC WHERE课程号='2005’)

    C. SELECT学号FROM SC WHERE课程号='2001'AND课程号='2005'

    D. SELECT学号FROM SC WHERE课程号='2001'OR'2005'


    正确答案:A
    嵌套查询所要求的结果出自一个关系,但相关的条件却涉及多个关系。其内层基本上也是一个SE. LECT—FROM—WHERE查询语句。简单嵌套查询可使用谓词IN或NOT IN来判断外层的查询条件中是否包含内层查询的结果。本题要查询同时选修2001和2005号课程的学生的学号,外层查询包含了内层查询的结果。故本题答案为A。

  • 第15题:

    给定学生S(学号,姓名,年龄,入学时间,联系方式)和选课SC(学号,课程号,成绩)关系,若要查询选修了1号课程的学生学号、姓名和成绩,则该查询与关系代数表达式 (8) 等价。

    A.A

    B.B

    C.C

    D.D


    正确答案:B
    本题考查数据库中的关系代数。解答本题需要对关系代数中的自然连接有一定了解。自然连接操作会自动以两个关系模式中共有属性值相等作为连接条件,对于连接结果,将自动去除重复的属性。所以在本题中,连接条件为两个表的学号相等,当连接操作完成以后,形成的结果表,有属性“学号,姓名,年龄,入学时间,联系方式,课程号,成绩”,此时要选择1号课程的学生记录,应使用条件6=“1”,其含义是表中的第6个属性值为“1”。所以本题应选B。

  • 第16题:

    设学生表S、课程表C和学生选课表SC的结构如下;S(学号,姓名,年龄,系别)C(课程号,课程名)SC(学号,课程号,成绩)查询学生姓名及所选修课程的课程号和成绩,实现此功能的SELECT语句是______。

    A.SELECTS.姓名,SC.课程号,SC.成绩FROMSWHERES.学号=SC.学号

    B.SELECTS.姓名,SC.课程号,SC.成绩FROMSCWHERES.学号=SC.成绩

    C.SELECTS.姓名,SC.课程号,SC.成绩FROMS,SCWHERES.学号=SC.学号

    D.SELECTS.姓名,SC.课程号,SC.成绩FROMS,SC


    正确答案:C
    解析:根据题目要求可以分析:本查询涉及到学生表S和学生选课表SC,同时需要满足查询条件“S.学号=SC.学号”,所以只有使用选项C的语句,才能实现查询学生姓名及其所选修课程的课程号和成绩。

  • 第17题:

    ( 33 )查询选修课程号为 “ 101 ” 课程得分最高的同学,正确的 SQL 语句是

    A) SELECT 学生 . 学号 , 姓名 FROM 学生 , 选课 WHERE 学生 . 学号 = 选课 . 学号

    AND 课程号 = "101" AND 成绩 >=ALL(SELECT 成绩 FROM 选课 )

    B) SELECT 学生 . 学号 , 姓名 FROM 学生 , 选课 WHERE 学生 . 学号 = 选课 . 学号

    AND 成绩 >=ALL(SELECT 成绩 FROM 选课 WHERE 课程号 = "101" )

    C) SELECT 学生 . 学号 , 姓名 FROM 学生 , 选课 WHERE 学生 . 学号 = 选课 . 学号

    AND 成绩 >=ANY(SELECT 成绩 FROM 选课 WHERE 课程号 = "101" )

    D) SELECT 学生 . 学号 , 姓名 FROM 学生 , 选课 WHERE 学生 . 学号 = 选课 . 学号

    AND 课程号 = "101"AND 成绩 >=ALL(SELECT 成绩 FROM 选课 WHERE 课程号 = "101" )


    正确答案:B

  • 第18题:

    已知关系模式:学生(学号,姓名,性别,年龄,系别),选课(学号,课程号,成绩)用关系代数实现查询没有选修课程号为‘C3’课程的学生学号。


    正确答案:π学号(学生)-π学号(σ课程号= ‘C3’(选课))

  • 第19题:

    假定学生关系是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

  • 第20题:

    学生(学号,姓名,性别,专业,班级)课程(课程号,课程名,学分,简介)选修(学号,课程号,成绩)第三个关系的表达式中括号内“学号”是:()

    • A、关系名
    • B、属性
    • C、主键
    • D、主属性

    正确答案:D

  • 第21题:

    问答题
    设教学数据库中有4个关系:教师关系T(T#,TNAME,TITLE)课程关系C(C#,CNAME,T#)学生关系S(S#,SNAME,AGE,SEX)选课关系SC(S#,C#,SCORE)试用关系代数表达式表示各个查询语句。(1)检索年龄小于17岁的女学生的学号和姓名。(2)检索男学生所学课程的课程号和课程名。(3)检索男学生所学课程的任课老师的职工号和姓名。(4)检索至少选修了两门课程的学生学号。(5)检索至少有学号为S2和S4学生选修的课程的课程号。(6)检索WANG同学不学的课程的课程号。(7)检索全部学生都选修的课程的课程号与课程名。(8)检索选修课程包含LIU老师所授全部课程的学生学号。

    正确答案: ①检索年龄小于17岁的女学生的学号和姓名。
    SELECT S#.SNAME FROM S
    WHERE AGE<17 AND SEX=’F’
    ②检索男学生所学课程的课程号和课程名。
    SELECT C.C#,CNAME (连接查询方式) FROM S,SC,C
    WHERE S.S#=SC.S# AND SC.C#=C.C# AND SEX=’M’;
    ③检索男学生所学课程的任课老师的工号和姓名。
    SELECT T.T#, TNAME FROM S,SC,C,T
    WHERE S.S#=SC.S# AND SC.C#=C.C# AND C.T#=T.T# AND SEX=’M’;
    ④检索至少选修两门课程的学生学号。
    SELECT DISTINCT X.S# FROM SC AS X, SC AS Y
    WHERE X.S#=Y.S# AND X.C#!=Y.C#;
    ⑤检索至少有学号为S2和S4的学生选修的课程的课程号。
    SELECT DISTINCT X.C# FROM SC AS X, SC AS Y
    WHERE X.S#=’S2’ AND Y.S#=’S4’ AND X.C#=Y.C#;
    ⑥检索WANG同学不学的课程的课程号。
    SELECT C# FROM C
    WHERE NOT EXISTS (SELECT * FROM S, SC
    WHERE S.S#=SC.S# AND SC.C#=C.C# AND SNAME=’WANG’);
    ⑦检索全部学生都选修的课程的课程号与课程名。
    SELECT C#,CNAME FROM C
    WHERE NOT EXISTS (SELECT * FROM S
    WHERE NOT EXISTS (SELECT * FROM SC
    WHERE S#=S.S# AND C#=C.C#));
    ⑧检索选修课程包含LIU老师所授全部课程的学生学号。
    法一:
    SELECT DISTINCT S# FROM SC AS X
    WHERE NOT EXISTS (SELECT * FROM C,T
    WHERE C.T#=T.T# AND TNAME=’LIU’
    AND NOT EXISTS (SELECT{
    FROM SC AS Y
    WHERE Y.S#=X.S# AND Y.C#=C.C#));
    法二:
    SELECT DISTINCT S# FROM SC X
    WHERE NOT EXISTS ((SELECT C# FROM C,T
    WHERE C.T#=T.T# AND TNAME='LIU’) EXCEPT
    (SELECT C# FROM SC Y WHERE Y.S#=X.S#));
    解析: 暂无解析

  • 第22题:

    单选题
    学生(学号,姓名,性别,专业,班级)课程(课程号,课程名,学分,简介)选修(学号,课程号,成绩)第三个关系的表达式中括号内“学号”是:()
    A

    关系名

    B

    属性

    C

    主键

    D

    主属性


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

  • 第23题:

    问答题
    已知关系模式:学生(学号,姓名,性别,年龄,系别),选课(学号,课程号,成绩)用关系代数实现查询没有选修课程号为‘C3’课程的学生学号。

    正确答案: π学号(学生)-π学号(σ课程号= ‘C3’(选课))
    解析: 暂无解析