niusouti.com

设学生表和成绩表的结构分别为(学号,姓名,所在系)和(学号,课程名,成绩),如果希望按分数降序查询出“英语系中选修了计算机课程的学生姓名和成绩”,则对应的SQL语句是()。A、SELECT姓名,成绩FROM学生表,成绩表WHERE所在系=‘英语系’AND课程名=‘计算机’AND学生表.学号=课程表.学号B、SELECT姓名,成绩FROM学生表,成绩表WHERE所在系=‘英语系’AND课程名=‘计算机’AND学生表.学号=课程表.学号ORDERBY成绩ASCC、SELECT姓名,成绩FROM学生表,成绩表W

题目

设学生表和成绩表的结构分别为(学号,姓名,所在系)和(学号,课程名,成绩),如果希望按分数降序查询出“英语系中选修了计算机课程的学生姓名和成绩”,则对应的SQL语句是()。

  • A、SELECT姓名,成绩FROM学生表,成绩表WHERE所在系=‘英语系’AND课程名=‘计算机’AND学生表.学号=课程表.学号
  • B、SELECT姓名,成绩FROM学生表,成绩表WHERE所在系=‘英语系’AND课程名=‘计算机’AND学生表.学号=课程表.学号ORDERBY成绩ASC
  • C、SELECT姓名,成绩FROM学生表,成绩表WHERE所在系=‘英语系’AND课程名=‘计算机’AND学生表.学号=课程表.学号ORDERBY成绩
  • D、SELECT姓名,成绩FROM学生表,成绩表WHERE所在系=‘英语系’AND课程名=‘计算机’AND学生表.学号=课程表.学号ORDERBY成绩DESC

相似考题
更多“设学生表和成绩表的结构分别为(学号,姓名,所在系)和(学号,课程”相关问题
  • 第1题:

    在成绩表中,检索选修3门以上课程的学生及格学科的总成绩。成绩表中包含学号、姓名、课程名和成绩4个字段。请将下列SQL语句补充完整。SELECT 学号,SUM(成绩) FROM 成绩表; WHERE 成绩>=60; GROUP BY 学号; ______COUNT(*)>=3


    正确答案:HAVING
    HAVING 解析:在实际的应用中,除了简单的计算查询外,我们还可以加上GROUP BY子句进行分组计算查询。
    通常来说,一个计算函数的范围是满足WHERE子句指定条件的所有记录。当加上GROUP BY子句后,系统会将查询结果按指定列分成集合组。当一个计算函数和一个GROUP BY子句一起使用时,计算函数的范围变为每组所有的记录。也就是说,一个结果是由组成一组的每个记录集合产生的。
    另外,使用HAVING子句可以对这些组进一步加以控制。用这个子句定义这些组所必须满足的条件,以便将其包含在结果中。
    本题中,根据学号将学生记录分组,然后利用SQL的统计函数COUNT(),统计选修3门课程以上的学生记录,并利用SUM()函数将及格科目的分数求和。

  • 第2题:

    设有学生表(学号,姓名,所在系名)和选课表(学号,课程号,成绩)。现要建立统计每个系选课人数的视图。请补全下列语句:CREATE VIEW Vl(系名,人数)AsSELECT所在系名,【4】 FROM选课表JOIN学生表ON选课表.学号=学生表.学号【5】


    正确答案:
    第一空:COUNT(DISTINCT选课表.学号)第二空:GROUP BY所在系名【解析】由于要统计选课人数所以要用到聚类函数COUNT(DISTINCTI ALL<列名>),表示对某列的值的计数,如果指定DISTINCT短语,则表示在计算时要取消指定列中的重复值。如果不指定DISTINCT短语或指定ALL短语,则表示保留重复值。由于是对不同系中的学生的学号统计,所以用GROUP BY子句将查询结果按某一列或多列的值分组,值相等的为一组。通过对组内不同学号的统计从而统计出各个系的选课人数。

  • 第3题:

    基于数据库中的学生表、成绩表、任课表:

    学生(学号,姓名,性别,出生日期,系名)

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

    任课(课程名,任课教师名)

    用SQL语言中的CREATE语句创建一个含有学号、姓名、性别、系名、课程名、成绩、任课教师名的学生成绩视图.


    正确答案:
    CREATEVIEW学生成绩ASSELECT学生.学号,学生,姓名,学生,性别,学生,系名,成绩,成
    绩,成绩.课程名,任课.任课教师名
    FROM学生,成绩,任课
    WHERE学生.学号=成绩,学号
    AND成绩,课程名=任课,课程名;

  • 第4题:

    设学生表和成绩表的结构分别为(学号,姓名,所在系)和(学号,课程名,成绩),如果希望按分数降序查询出“英语系中选修了计算机课程的学生姓名和成绩”,则对应的SQL语句是()。

    A. SELECT姓名,成绩FROM学生表,成绩表WHERE所在系一‘英语系’AND课

    程名=‘计算机’AND学生表.学号=课程表,学号

    B. SELECT姓名,成绩FROM学生表,成绩表WHERE所在系=‘英语系’AND课

    程名=‘计算机’AND学生表.学号=课程表.学号ORDER BY成绩ASC

    C. SELECT姓名,成绩FROM学生表,成绩表WHERE所在系=‘英语系’AND课

    程名=计算机’AND学生表。学号=课程表。学号ORDER BY成绩

    D. SELECT姓名,成绩FROM学生表,成绩表WHERE所在系=‘英语系’AND课

    程名=‘计算机’AND学生表.学号一课程表.学号ORDER BY成绩DESC


    参考答案D

  • 第5题:

    在成绩表中,检索选修3门以上课程的学生的及格学科的总成绩。成绩表中包含学号、姓名、课程名和成绩4个字段。

    请将下面的SQL语句补充完整。

    SELECT学号,SUM(成绩)FROM【 】;

    WHERE成绩>=60;

    GROUP BY学号;

    【 】COUNT(*)>=3


    正确答案:【 】成绩表【 】HAVING
    【 】成绩表【 】HAVING 解析:本题中,根据学号将学生记录分组,然后利用SQL的统计函数COUNT(),统计选修3门课程以上的学生记录,并利用SUM()函数将及格科目的分数求和。

  • 第6题:

    设某数据库中有学生表(学号,姓名,所在系)和选课表(学号,课程号,成绩)。现要查询没选课的学生姓名和所在系。下列语句中能够实现该查询要求的是( )。

    A.SELECT姓名,所在系FROM学生表a LEFT JOIN选课表bON a.学号=b.学号WHERE a.学号IS NULL

    B.SELECT姓名,所在系FROM学生表a LEFT JOIN选课表bON a.学号=b.学号WHERE b.学号IS NULL

    C.SELECT姓名,所在系FROM学生表a RIGHT JOIN选课表bON a.学号=b.学号WHERE a.学号IS NULL

    D.SELECT姓名,所在系FROM学生表a RIGHT JOIN选课表bON a.学号=b.学号WHERE b.学号IS NULL


    正确答案:B
    从数据库中查出没有选课的学生姓名和所在系,则在学生表中查出选课表中没有的学生即可。在这里采用LEFTJOIN来连接查询。并且要求选课表中的学生学号为NULL。

  • 第7题:

    第下列各题中使用如下数据表。 “学生”表:学号C(8),姓名C(8),性别c(2),系名(6) “课程”表:课程编号C(4),课程名称c(12),开课系名C(10) “成绩”表:学号c(8),课程编号c(4),成绩N(6,2) 检索每门课程的最高分,要求得到的信息包括课程名称、姓名和最高分,正确的SQL语句是( )。

    A.SELECT课程.课程名称,学生.姓名,MAX(成绩). As最高分 FROM成绩,课程,学生 WHERE成绩.课程编号=课程.课程编号 AND成绩.学号=学生.学号 GROUP BY课程编号

    B.SELECT课程.课程名称,学生.姓名,MAX(成绩) AS最高分 FROM成绩,课程,学生 wHERE成绩.课程编号=课程.课程编号 AND成绩.学号=学生.学号 GROUP BY课程.课程编号

    C.SELECT课程.课程名称,学生.姓名.MAX(成绩) AS.最高分 FROM成绩,课程,学生 WHERE成绩.课程编号=课程.课程编号 AND成绩.学号=学生.学号 ORDER BY课程.课程编号

    D.SELECT课程.课程名称,学生.姓名.MAX(成绩) AS最高分 FROM成绩,课程,学生 WHERE成绩.课程编号=课程.课程编号 AND成绩.学号=学生.!学号 ORDER BY课程.课程编号


    正确答案:B
    本题中首先通过GROUl’BY短语将“课程”表中的记录按“课程编号”分组,然后通过MAX函数求出每组中的最高成绩,即每门课程的最高成绩。由于查询输出结果涉及多个表的字段,因此要使用连接查询,表之间的连接条件放在WHERE短语中,AND用来连接两个连接条件,以保证在查询的三个表之间建立联系。

  • 第8题:

    学生表:student(学号,姓名,性别,出生日期,院系)

    课程表:course(课程号,课程名,学时)

    选课成绩表:score(学号,课程号,成绩)

    其中出生日期的数据类型为日期型,学时和成绩为数值型,其他均为字符型。

    查询“计算机系’’学生的学号、姓名、学生所选课程的课程名和成绩,正确的命令是

    A.SELECT s.学号,姓名,课程名,成绩 FROM studentS,score SC,course C WHERE s.学号=sc.学号,sc.课程号=c.课程号,院系=‘计算机系’

    B.SELECT学号,姓名,课程名,成绩 FROM student S,score SC,course c WHERE s.学号=sc.学号AND sc.课程号=c.课程号AND院系=‘计算机系’

    C.SELECT s.学号,姓名,课程名,成绩 FROM(student s JOIN score sc ON s.学号=sc.学号). JOIN course c ON sc.课程号=c.课程号 WHERE院系=‘计算机系’

    D.SELECT学号,姓名,课程名,成绩 FROM(student s JOIN score sc‘ON s.学号=sc.学号) JOIN course c ON sc.课程号=c.课程号 WHERE院系=‘计算机系’


    正确答案:C

  • 第9题:

    设学生表的结构为:(学号、姓名、性别、出生年月、入校总分、三好生),其中学号为主键。选课表的结构为:(学号、课程号、成绩),其中学号+课程号为主键。下列语句中,错误的是 ______。

    A.SELECT * FROM学生表

    B.SELECT学号AS学生编号FROM学生表

    C.SELECT ALL FIELDS FROM学生表

    D.SELECT DISTINCT学号FROM选课表


    正确答案:C
    解析:选项A中的字符“*”表示学生表中全部的字段名,不必逐一列出;选项B只列出学生表中的“学号”字段值,并在查询结果中将列标题改为“学生编号”;选项D列出选课表中消去了重复值的“学号”字段内容;选项C由于多了FIELDS,故是错误的。

  • 第10题:

    设有表示学生选课的三张表,学生表(学号,姓名,性别),课程表(课程号,课程名),选课成绩表(学号,课程号,成绩),则选课成绩表的关键字为( )。

    A)课程号,成绩

    B)学号,成绩

    C)学号,课程号

    D)学号,课程号,成绩


    正确答案:C

  • 第11题:

    设学生表和课程表的结构分别为(学号,姓名)和(学号,课程号,成绩),如果希望查询出“成绩大于90分的学生姓名”,则对应的SQL语句是()。

    ASELECT 姓名 FROM 学生表 WHERE 学生表.学号=课程表.学号 AND 课程表.成绩>90

    BSELECT 姓名 FROM 课程表 WHERE学生表.学号=课程表.学号 AND 课程表.成绩>90

    CSELECT 姓名 FROM 学生表,课程表 WHERE 学生表.学号=课程表.学号 OR 课程表.成绩>90

    DSELECT 姓名 FROM 学生表,课程表 WHERE 学生表.学号=课程表.学号 AND 课程表.成绩>90


    D

  • 第12题:

    单选题
    设学生表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为超连接查询。

  • 第13题:

    使用如下3个数据库表: 学生表:S(学号,姓名,性别,出生日期,院系) 课程表:C(课程号,课程名,学时) 选课成绩表:SC(学号,课程号,成绩) 在上述表中,出生日期数据类型为日期型,学时和成绩为数值型,其他均为字符型。用SQL命令查询选修的每门课程的成绩都高于或等于85分的学生的学号和姓名,正确的命令是______。

    A.SELECT学号,姓名FROM S WHERE NOT EXISTS; (SELECT*FROM SC WHERE SC.学号=S.学号AND成绩<85)

    B.SELECT学号,姓名FROM S WHERE NO TEXISTS; (SELECT*FROM SC WHERE SC.学号=S.学号AND成绩>=85)

    C.SELECT学号,姓名FROMS,SC; WHERE S.学号=SC.学号AND成绩>=85

    D.SELECT学号,姓名FROMS,SC; WHERE S.学号=SC.学号AND ALL成绩>=85


    正确答案:A
    解析:本题建立的是SELECT—SQL命令的嵌套查询语句s在这个命令中要用到两个SELECT—FROM— WHERE查询块,即内层查询块和外层查询块,通过查询块检索选修的每门课程的成绩都高于或等于85分的记录,即选修的每门课程的成绩中都不存在85分以下的记录。

  • 第14题:

    设有学生表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.学号


    正确答案:D
    解析:此题是一个联接查询,联接查询是一种基于多个关系的查询。在SQL查询语句中建立两表间的连接可使用JOIN关键字连接其左右两个表名>所指的表,JOIN为普通连接,在Visual FoxPro中称为内部连接,即只有满足连接条件的记录才出现在查询结果中。用ON子句指定连接条件:也可以一次性在WHERE子句中指定连接条件和筛选条件。格式如下:
      SELECT 目标列表达式>
      FROM[[表名1>|视图名1>][[INNE]
      JOIN 表名2>|视图名1>]...ON连接条件>]...
      FROM[[数据库名>]owner>{表名>|视图名>}
      [,[[数据库名>.]owner>{表名>|视图名>}...
      [WHERE条件表达式>]
      [GROUP BY列名1>
      [HAVING内部函数表达式>]]
      [ORDER BY列名2> {ASC/DESC}]
    所以A、B选项错误,如果先连接学生表S和学生选课表SC,会造成结果中有不符合要求的多余记录,所以C选项错误。

  • 第15题:

    设学生表 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. 学号


    正确答案:D

  • 第16题:

    若有学生表Student,结构为:学生(学号,姓名,所在系),选课表SC结构为:选课(学号,课程号,成绩)。现要查询信息工程系学生的姓名和所选的课程号。下列关系代数表达式正确的是()。

    A、σ姓名,课程号( ∏所在系=‘信息工程’ (SCStudent))

    B、σ姓名,课程号( ∏所在系=‘信息工程’ SCStudent)

    C、∏姓名,课程号(σ所在系=‘信息工程’ (SCStudent))

    D、∏姓名,课程号(σ所在系=‘信息工程’ SCStudent)


    参考答案:C

  • 第17题:

    基于学生表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。

  • 第18题:

    设学生表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

  • 第19题:

    有如下SQL语句: SELECT姓名FROM学生表WHERE学号IN; (SELECT学号FROM成绩表WHERE成绩>90) 下列哪条命令与该SQL语句等价

    A.SELECT姓名FROM学生表WHERE EXISTS; (SELECT学号FROM成绩表WHERE成绩>90)

    B.SELECT姓名FROM学生表WHERE EXISTS; (SELECT学号FROM成绩表WHERE学号=学生表.学号AND成绩>90)

    C.SELECT姓名FROM学生表WHERE学号EXISTS; (SELECT学号FROM成绩表WHERE学号=学生表.学号AND成绩>90)

    D. SELECT姓名FROM学生表WHERE学号=; (SELECT学号FROM成绩表WHERE成绩>90)


    正确答案:B
    解析:IN是包含运算,此处子查询中得到多个结果,记录不惟一,因此不用“=”运算符;EXISTS是谓词,用来检查在子查询中时候有结果返回。

  • 第20题:

    根据以下资料,回答下列各题: 使用如下三个数据库表: 学生表:student(学号,姓名,性别,出生日期,院系) 课程表:course(课程号,课程名,学时) 选课成绩表:score(学号,课程号,成绩) 其中出生日期的数据类型为日期型,学时和成绩为数值型,其他均为字符型。 查询“计算机系”学生的学号、姓名、学生所选课程名和成绩,正确的命令是( )。

    A.SELECT s.学号,姓名,课程名,成绩 FROM student s,score sc。course c WHERE s.学号=sc.学号,sc.课程号=c.课程号,院系="计算机系"

    B.SELECT学号,姓名,课程名,成绩 FROM student s,score sc,course C WHERE s.学号=SC.学号AND sc.课程号=c.课程号AND院系="计算机系"

    C.SELECT s.学号,姓名,课程名,成绩 FROM(student s JOIN score sc ON s.学号=sc.学号) JOIN course c ON sc.课程号=c.课程号 wHERE院系="计算机系"

    D.SELECT学号,姓名,课程名,成绩 FROM(student s JOIN score sc ON s.学号=sc.学号) JOIN course c ON sc.课程号=c.课程号 WHERE院系="计算机系"


    正确答案:B
    B。【解析】由题所知,所查询的是计算机系所选课程的学生的学号、姓名、课程名和成绩,其中涉及三个表,所以条件为s.学号=sc.学号ANDsc.课程号=c.课程号AND院系=”计算机系”。所以答案选择B。

  • 第21题:

    某学校的教学信息关系数据库中有如下两个表:

    学生表(学号,姓名,性别,专业)

    成绩表(学号,课程名,分数)

    用SQL语句表达下述查询:

    (a)检索分数高于80分的所有学生的学号和分数。

    (b)检索选修了“高等数学”课程的所有学生的学号。


    正确答案:
    SELECT学号,分数FROM成绩表WHERE分数>80
    SELECT学号FROM成绩表WHERE课程名='高等数学'

  • 第22题:

    已知学生关系(学号,姓名,性别,课程号,成绩,所在系号)有下列函数依赖

    Ⅰ.(学号,课程号)→课程号

    Ⅱ.(学号,课程号)→成绩

    Ⅲ.(学号,课程号)→所在系号

    Ⅳ.(学号,课程号)→姓名,性别

    Ⅵ.(学号,课程号)→学号

    以上函数依赖属于非平凡函数依赖的是______。

    A) 仅Ⅰ和Ⅴ

    B) 仅Ⅱ和Ⅴ

    C) 仅Ⅲ和Ⅳ

    D) 仅Ⅱ、Ⅲ和Ⅳ

    A.

    B.

    C.

    D.


    正确答案:D

  • 第23题:

    有如下SQL语句:下列哪条命令与该SQL语句等价() SELECT姓名FROM学生表WHERE学号IN; (SELECT学号FROM成绩表WHERE成绩>90)

    • A、SELECT姓名FROM学生表WHEREEXISTS;(SELECT学号FROM成绩表WHERE成绩>90)
    • B、SELECT姓名FROM学生表WHEREEXISTS;(SELECT学号FROM成绩表WHERE学号=学生表.学号AND成绩>90)
    • C、SELECT姓名FROM学生表WHERE学号EXISTS;(SELECT学号FROM成绩表WHERE学号=学生表.学号AND成绩>90)
    • D、SELECT姓名FROM学生表WHERE学号=;(SELECT学号FROM成绩表WHERE成绩>90)

    正确答案:B

  • 第24题:

    单选题
    设学生表和课程表的结构分别为(学号,姓名)和(学号,课程号,成绩),如果希望查询出“成绩大于90分的学生姓名”,则对应的SQL语句是()。
    A

    SELECT 姓名 FROM 学生表 WHERE 学生表.学号=课程表.学号 AND 课程表.成绩>90

    B

    SELECT 姓名 FROM 课程表 WHERE学生表.学号=课程表.学号 AND 课程表.成绩>90

    C

    SELECT 姓名 FROM 学生表,课程表 WHERE 学生表.学号=课程表.学号 OR 课程表.成绩>90

    D

    SELECT 姓名 FROM 学生表,课程表 WHERE 学生表.学号=课程表.学号 AND 课程表.成绩>90


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