单选题查询选修课程号为“101”课程得分最高的同学,正确的SQL语句是(  )。A SELECT学生.学号,姓名FROM学生,选课WHERE学生.学号=选课.学号AND课程号=101AND成绩>=ALL(SELECT成绩FROM选课)B SELECT学生.学号,姓名FROM学生,选课WHERE学生.学号=选课.学号AND成绩>=ALL(SELECT成绩FROM选课WHERE课程号=101)C SELECT学生.学号,姓名FROM学生,选课WHERE学生.学号=选课.学号AND成绩>=ANY(SELECT成

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

SELECT学生.学号,姓名FROM学生,选课WHERE学生.学号=选课.学号AND课程号=101AND成绩>=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课程号=101AND成绩>=(SELECT成绩FROM选课WHERE课程号=101)


相似考题
更多“查询选修课程号为“101”课程得分最高的同学,正确的SQL语句是(  )。”相关问题
  • 第1题:

    查询选修课程号为“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”)


    正确答案:D
    解析:选项A中的子查询并没有限定选择“课程号”为“101”,则此命令选择出来的结果是“101”课程得分大于等于所有科目成绩的记录,如果其余课目的成绩有记录大于“101”科目的最高成绩,则此查询无结果,此选择错误。
    选项B中的查询并没有限定选择“课程号”为“101”,则此命令选择出来的结果是所有课程得分大于等于所有“101”科目成绩的记录,如果其余课目的成绩有记录大于“101”科目的最高成绩,则此查询将查询出错误结果,此选项错误。
    选项C中的查陶并没有限定选择“课程号”为“101”,则此命令选择出来的结果是所有课程得分大于等于任意“101”科目成绩的记录,此查询将查询出错误的结果,此选项错误。

  • 第2题:

    若有如下SQL查询语句: SELECT课程名称,开课系名,COUNT(学号)AS选修人数; FROM成绩,课程; WHERE课程.课程编号=成绩.课程编号; GROUP BY课程名称; HAVING COUNT(*)>3 上述语句所表示的含义是( )。

    A.检索开课在3门以上的开课系名、课程名称和选修人数

    B.检索选修了3门课程以上的学生记录,显示结果包括课程名称、开课系名和选修人数

    C.检索每门课程中,有3人以上选修该课程的记录,显示结果包括课程名称、开课系名和选修人数

    D.检索选修人数最多的3门课程的记录,显示结果包括课程名称、开课系名和选修人数


    正确答案:C
    解析:在分组与计算查询语句中,使用HAVING子句可以对分组进一步加以控制。用这个子句定义这些组所必须满足的条件,以便将其包含在结果中。当WHERE子句、GROUP BY子句和HAVING子句同时出现的时候,首先执行WHERE子句,从表中选择符合条件的行:然后由GROUP BY子句对选取的行进行分组;再执行计算函数;最后执行HAVING子句选取满足条件的分组。本题中,WHERE子句中指定的是两表连接的条件:接着通过GROUP BY子句指明按“课程名称”对记录分组;然后执行函数COUNT()统计分组后,可以确定每

  • 第3题:

    已知表S(学号,姓名,年龄)

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

    C(课程号,课程名,教师名)

    试用SQL查询语句表达下列对教学数据库中的三个基本表S、SC、C的查询:

    (1)统计有学生选修的课程门数.

    (2)求选修C4课程的学生的平均年龄.

    (3)求王平老师所授课程的每门课程的学生平均成绩.

    (4)统计每门课程的学生选修人数(超过10人的课程才统计).要求输出课程号和选修人数.

    (5)查询姓名以WANG开头的所有学生的姓名和年龄.


    正确答案:
    (1)SELECT  COUNT(DISTINCT课程号)
          ROM  SC;
    (2)SELECT  AVG(年龄)
          FROM  S,SC
          WHERE课程号=“C4”AND S.学号=SC.
          学号;
    (3)SELECTSC.课程号,课程名,AVG(成绩)
          FROM  SC,C
          WHERE  SC.课程号=C.课程号AND
          C.教师名=“王平”
           GROUP  BY  SC.课程号;
    (4)SELECT课程号,COUNT(学号)
           FROM  SC
          GROUP  BY课程号
           HAVING  COUNT(*)>10;
    (5)SELECT 姓名,年龄
            FROM  S
           WHERE 姓名 LIKE“WANG*”:

  • 第4题:

    现有某高校的选修课记录(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都是无效的,因为空值是一个不确定的值,所以不能用“=”进行比较。

  • 第5题:

    利用SQL语句统计选修了“日语”课程的学生人数。请将下列语句补充完整。

    SELECT______FROM 选课表 WHERE 课程名="日语"


    正确答案:COUNT(*)
    COUNT(*) 解析:SQL不仅有一般的检索功能,而且还有计算方式的检索,用于计算检索的函数见下表。

  • 第6题:

    假定学号的第3、4位为专业代码。要计算各专业学生选修课程号为"101"课程的平均成绩,正确的SQL语句是

    A.SELECT 专业 AS SUBS(学号,3,2),平均分AS AVG(成绩)FROM选课 WHERE 课程号="101"GROUP BY专业

    B.SELECT SUBS(学号,3,2)AS专业,AVG(成绩)AS平均分FROM选课 WHERE课程号="101"GROUP BY 1

    C.SELECT SUBS(学号,3,2)AS专业,AVG(成绩)AS平均分FROM选课 WHERE课程号="101"ORDER BY专业

    D.SELECT专业AS SUBS(学号,3,2),平均分AS AVG(成绩)FROM选课 WHERE课程号="101"ORDER BY 1


    正确答案:B
    解析:本题中所给出的四个选项中,选项A与选项C的错误很明显,因为分组短语GROUP BY后面所跟的“专业”字段,在查询的结果中并不存在,所以这两个选项不予考虑。而选项D则有一定的迷惑性,但题目仔细观察可以看出,其Select短语后面所跟随的“专业”字段列表在“选课”表中不存在,所以为错误选项。故选项 B为正确答案。

  • 第7题:

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

    【题目描述】

    2.为管理岗位业务培训信息,建立3个表:

    S (S#,SN,SD,SA)  S#,SN,SD,SA 分别代表学号、学员姓名、所属单位、学员年龄

    C (C#,CN )       C#,CN      分别代表课程编号、课程名称

    SC ( S#,C#,G )   S#,C#,G    分别代表学号、所选修的课程编号、学习成绩

    要求实现如下5个处理:

     1. 使用标准SQL嵌套语句查询选修课程名称为’税收基础’的学员学号和姓名

     2. 使用标准SQL嵌套语句查询选修课程编号为’C2’的学员姓名和所属单位

     3. 使用标准SQL嵌套语句查询不选修课程编号为’C5’的学员姓名和所属单位

     4. 使用标准SQL嵌套语句查询选修全部课程的学员姓名和所属单位

     5. 查询选修了课程的学员人数

     6. 查询选修课程超过5门的学员学号和所属单位

     


    【参考答案分析】:

    1. 使用标准SQL嵌套语句查询选修课程名称为税收基础的学员学号和姓名

    SELECT SN,SD FROM S
    WHERE [S#] IN(
    SELECT [S#] FROM C,SC
    WHERE C.[C#]=SC.[C#]
    AND CN='
    税收基础')


    2. 
    使用标准SQL嵌套语句查询选修课程编号为’C2’的学员姓名和所属单位

    SELECT S.SN,S.SD FROM S,SC
    WHERE S.[S#]=SC.[S#]
    AND SC.[C#]='C2'

    3. 
    使用标准SQL嵌套语句查询不选修课程编号为’C5’的学员姓名和所属单位

    SELECT SN,SD FROM S
    WHERE [S#] NOT IN(
    SELECT [S#] FROM SC
    WHERE [C#]='C5')

    4. 
    使用标准SQL嵌套语句查询选修全部课程的学员姓名和所属单位

    SELECT SN,SD FROM S

    WHERE S# IN(SELECT S# FROM SC GROUP BY S# HAVING COUNT(*)=
    (SELECT COUNT(*) FROM C))


    5. 查询选修了课程的学员人数

    SELECT 学员人数=COUNT(DISTINCT [S#]) FROM SC

    6. 
    查询选修课程超过5门的学员学号和所属单位

    SELECT SN,SD FROM S
    WHERE [S#] IN(
    SELECT [S#] FROM SC
    GROUP BY [S#]
    HAVING COUNT(DISTINCT [C#])>5)

     

    1使用标准SQL嵌套语句查询选修课程名称为’税收基础’的学员学号和姓名
    --实现代码:
    SELECT SN,SD FROM S
    WHERE [S#] IN(
        SELECT [S#] FROM C,SC
        WHERE C.[C#]=SC.[C#]
            AND CN=N'税收基础');


    2. 使用标准SQL嵌套语句查询选修课程编号为’C2’的学员姓名和所属单位
    --实现代码:
    SELECT S.SN,S.SD FROM S,SC
    WHERE S.[S#]=SC.[S#]
        AND SC.[C#]='C2';

    3. 使用标准SQL嵌套语句查询不选修课程编号为’C5’的学员姓名和所属单位
    --实现代码:
    SELECT SN,SD FROM S
    WHERE [S#] NOT IN(
        SELECT [S#] FROM SC
        WHERE [C#]='C5');

    4. 使用标准SQL嵌套语句查询选修全部课程的学员姓名和所属单位
    --实现代码:
    SELECT SN,SD FROM S
    WHERE [S#] IN(
        SELECT [S#] FROM SC
            RIGHT JOIN C ON SC.[C#]=C.[C#]
        GROUP BY [S#]
        HAVING COUNT(*)=COUNT(DISTINCT [S#]));

    5. 查询选修了课程的学员人数
    --实现代码:
    SELECT 学员人数=COUNT(DISTINCT [S#]) FROM SC;

    6. 查询选修课程超过5门的学员学号和所属单位
    --实现代码:
    SELECT SN,SD FROM S
    WHERE [S#] IN(
        SELECT [S#] FROM SC
        GROUP BY [S#]
        HAVING COUNT(DISTINCT [C#])>5);

     

  • 第8题:

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

    S(SNO,SNAME,SEX)

    C(CNO,CNAME)

    SC(SNO, CNO,SCORE)

    其中S表示学生表,各字段依次为学号、姓名、性别;C表示课程表,各字段依次为课程号、课程名;SC表示成绩表,各字段依次为学号、课程号和分数。

    使用SQL语句,向学生表增加所处学院SDEP字段,长度为30个字符。

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

    使用SQL语句,将课程号为“12”、课程名为“数据库”的一条记录插入C表。

    使用SQL语句,将课程号为“12”的课程名修改为“高等数学”。

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


    问题 1 答案解析:
    ALTERTABLESADDSDEPChar(30)


    问题 2 答案解析:
    SELECTS.SNAME,SC.SCOREFROMS,C,SCWhereS.SNO=SC.SNOANDC.CNO=SC.CNOANDWHEREC.CNAME=’计算机网络’ORDERBYSC.SCOREDESC


    问题 3 答案解析:
    INSERTINTOC(CNO,CNAME)values(‘12’,’数据库’)


    问题 4 答案解析:
    UPDATECSETCNAME=‘’高等数学WhereCNO=‘12’

  • 第9题:

    有以下3个数据表: 写出下列功能的SQL语句:  ①插入一个新课程记录(课程号:A001;课程名:英语1;学分:5); ②修改学号为“95020”,课程号为“A001”的成绩为85; ③查询所有学生的基本信息,使用中文作为查询结果的各字段的名称; ④统计出各个班级的人数; ⑤查询出学号为“95020”所选修的课程名和成绩,以及姓名。

  • 第10题:

    现有“学生选课”数据库,其中主要的表有:“学生”表(学号,姓名,性别,专业,出生年月),“选课”表(学号,课程号,成绩),“课程”表(课程号,课程名,所属专业,学分)按照下列要求写出SQL语句: (1)在“选课”表中,删除选了课程号为10004的所有选课记录。 (2)在“课程”表中,修改课程号为10008的课程名称:数字电路。 (3)设计子查询,查询“课程”表中,有哪些课程没有被任何同学报选。 (4)设计连接查询,查找选修了“数据结构”课程且成绩在80分及以上的学生的学号、姓名、课程名及成绩。


    正确答案: 1)use学生选课
    Delete from选课where课程号=’10004’
    2)use学生选课
    Update课程set课程名=’数字电路’where课程号=’10008’
    3)use学生选课
    Select课程号,课程名from课程where课程号notin
    (Select distinct课程号from选课)
    4)use学生选课
    Select学生.学号,姓名,课程.课程名,选课.成绩
    From学生join选课on学生.学号=选课.学号
    Join课程on课程.课程号=选课.课程号
    Where课程.课程名=’数据结构’and选课.成绩>=80

  • 第11题:

    单选题
    要在学生选课表中查询选修三门以上课程的学生的学号,则可以使用的SQL语句是“SELECT 学号 FROM 学生选课 GROUP BY ()COUNT(*)>3”。
    A

    课程号 WHERE

    B

    学号 WHERE

    C

    课程号 HAVING

    D

    学号 HAVING


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

  • 第12题:

    单选题
    假定学号的第3、4位为专业代码。要计算各专业学生选修课程号为“101”课程的平均成绩,正确的SOL语句是(  )。
    A

    SELECT专业AS SUBS(学号,3,2),平均分AS AVG(成绩)FRON选课WHERE课程号=101 GROUP BY专业

    B

    SELECT SUBS(学号,3,2)AS专业,AVG(成绩)AS平均分FROM选课WHERE课程号=101 GROUP BY 1

    C

    SELECT SUBS(学号,3,2)AS专业,AVG(成绩)AS平均分FROM选课WHERE课程号=101 ORDER BY专业

    D

    SELECT专业AS SUBS(学号,3,2),平均分AS AVG(成绩)FROM选课WHERE课程号=101 ORDER BY 1


    正确答案: D
    解析:
    “SUBS(学号,3,2)AS专业”表示选取学号的第3和第4位来代表专业代码,等同于Visual FoxPro命令中的SUBSTR()函数。计算平均分用AVG()函数,计算各专业学生选修课程号为“101”课程的平均成绩,应以专业为分组依据,分组用GROUP BY短语。

  • 第13题:

    在“查询选修课程号为4,且成绩在80分以上的所有学生的学号”的SQL语句中,将使用的表是( )。

    A)学生信息表s

    B)学生信息表s和课程信息表c,

    C)学生信息表s、课程信息表c和学生选课信息表sc

    D)学生选课信息表sc


    正确答案:D
    在学生选课信息表SC中,包括了本题所要涉及到的查询字段,因此,只要使用sc表就可以完成本题的查询。

  • 第14题:

    利用SQL语句统计选修了“日语”课程的学生人数。请将下列的语句补充完整。SELECT______FROM 选课表 WHERE课程名="日语"


    正确答案:COUNT(*)
    COUNT(*) 解析:SQL不仅有一般的检索功能,而且还有计算方式的检索,用于计算检索的函数见下表。

  • 第15题:

    假定学号的第3、4位为专业代码,要计算各专业学生选修课程号为“1O1”课程的平均成绩,正确的SQL语句是( )。

    A.SELECT专业AS SUBS(学号,3,2),平均分AS AVG(成绩)FROM选课 WHERE课程号=”101”GROUP BY专业

    B.SELECT SUBS(学号,3,2)AS专业,AVG(成绩)AS 平均分FROM选课 WHERE课程号=”101”GROUP BY 1

    C.SELECT SUBS(学号,3,2)AS专业,AVG(成绩)AS 平均分FROM选课 WHERE课程号=”101”ORDER BY专业

    D.SELECT专业AS SUBS(学号,3,2),平均分AS AVG(成绩)FROM选课 WHERE课程号=”101”ORDER BY 1


    正确答案:B
    先用SQLSELECT中的GROUPBY把不同专业的学生进行分组,然后再利用AVG函数计算平均分。

  • 第16题:

    为管理岗位业务培训信息,建立3个表:

    S (S#,SN,SD,SA) S#,SN,SD,SA 分别代表学号、学员姓名、所属单位、学员年龄

    C (C#,CN ) C#,CN 分别代表课程编号、课程名称

    SC ( S#,C#,G ) S#,C#,G 分别代表学号、所选修的课程编号、学习成绩

    要求实现如下5个处理:

    1. 使用标准SQL嵌套语句查询选修课程名称为’税收基础’的学员学号和姓名

    2. 使用标准SQL嵌套语句查询选修课程编号为’C2’的学员姓名和所属单位

    3. 使用标准SQL嵌套语句查询不选修课程编号为’C5’的学员姓名和所属单位

    4. 使用标准SQL嵌套语句查询选修全部课程的学员姓名和所属单位

    5. 查询选修了课程的学员人数

    6. 查询选修课程超过5门的学员学号和所属单位


    正确答案:
     

  • 第17题:

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

    A.SELECT学生.学号,姓名FROM学生,选课 WHERE学生.学号=选课.学号 AND课程号=”101”AND成绩>=A11(SELECT成绩FROM选课)

    B.SELECT学生.学号,姓名FROM学生,选课 WHERE学生.学号=选课.学号 AND成绩>=A11(SELECT成绩FROM选课 WHERE课程号=”101”)

    C.SELECT学生.学号,姓名FROM学生,选课WHERE学生.学号=选课.学号 AND成绩>:=:A11(SELECT成绩FROM选课 WHERE课程号=”101”)

    D.SELECT学生.学号,姓名FROM学生,选课WHERE学生.学号一选课.学号AND 课程号一”101”AND成绩>=A11(SELECT成绩FROM选课WHERE课程号一”101”)


    正确答案:D
    本题采用嵌套查询。其中,ALL表示所有的结果。

  • 第18题:

    查询选修课程号为"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")


    正确答案:D
    解析:本题所给出的四个选项中:
      选项A中的子查询并没有限定选择“课程号”为“101”,则此命令选择出来的结果是“101”课程得分大于等于所有科目成绩的记录,如果其余课目的成绩有记录大于“101”科目的最高成绩,则此查询无结果,此选项错误。选项B中的查询并没有限定选择“课程号”为“101”,则此命令选择出来的结果是所有课程得分大于等于所有“101”科目成绩的记录,如果其余课目的成绩有记录大于“101”科目的最高成绩,则此查询将查询出错误结果,此选项错误。
      选项C中的查询并没有限定选择“课程号”为“101”,则此命令选择出来的结果是所有课程得分大于等于任意“101”科目成绩的记录,此查询将杳询出错误结果,此选项错误。
      选项D符合题意,将查询出正确结果,故为正确答案。

  • 第19题:

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

    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,'高等数学')

  • 第20题:

    ( 32 ) 假定学号的第 3 、 4 位为专业代码 。 要计算各专业学生选修课程号为 “ 101 ” 课程的平均成绩 , 正确的 SQL 语句是

    A) SELECT 专业 AS SUBS( 学号 ,3,2), 平均分 AS AVG( 成绩 ) FROM 选课 WHERE 课程号 = "101" GROUP BY 专业

    B) SELECT SUBS( 学号 ,3,2) AS 专业 , AVG( 成绩 ) AS 平均分 FROM 选课 WHERE 课程号 = "101" GROUP BY 1

    C) SELECT SUBS( 学号 ,3,2) AS 专业 , AVG( 成绩 ) AS 平均分 FROM 选课 WHERE 课程号 = "101" ORDER BY 专业

    D) SELECT 专业 AS SUBS( 学号 ,3,2), 平均分 AS AVG( 成绩 ) FROM 选课 WHERE 课程号 = "101" ORDER BY 1


    正确答案:B

  • 第21题:

    要在学生选课表中查询选修三门以上课程的学生的学号,则可以使用的SQL语句是“SELECT 学号 FROM 学生选课 GROUP BY ()COUNT(*)>3”。

    • A、课程号 WHERE
    • B、学号 WHERE
    • C、课程号 HAVING
    • D、学号 HAVING

    正确答案:D

  • 第22题:

    问答题
    现有“学生选课”数据库,其中主要的表有:“学生”表(学号,姓名,性别,专业,出生年月),“选课”表(学号,课程号,成绩),“课程”表(课程号,课程名,所属专业,学分)按照下列要求写出SQL语句: (1)在“选课”表中,删除选了课程号为10004的所有选课记录。 (2)在“课程”表中,修改课程号为10008的课程名称:数字电路。 (3)设计子查询,查询“课程”表中,有哪些课程没有被任何同学报选。 (4)设计连接查询,查找选修了“数据结构”课程且成绩在80分及以上的学生的学号、姓名、课程名及成绩。

    正确答案: 1)use学生选课
    Delete from选课where课程号=’10004’
    2)use学生选课
    Update课程set课程名=’数字电路’where课程号=’10008’
    3)use学生选课
    Select课程号,课程名from课程where课程号notin
    (Select distinct课程号from选课)
    4)use学生选课
    Select学生.学号,姓名,课程.课程名,选课.成绩
    From学生join选课on学生.学号=选课.学号
    Join课程on课程.课程号=选课.课程号
    Where课程.课程名=’数据结构’and选课.成绩>=80
    解析: 暂无解析

  • 第23题:

    问答题
    假设某教学管理数据库有以下三张表,请写出下列问题的SQL语句:    学生(学号,姓名,年龄,性别)    课程(课程号,课程名,任课教师) 成绩(学号,课程号,成绩) (1)如何在SQL Server上创建这三张表; (2)查询刘峰教师所授课程号,课程名; (3)查询年龄大于20岁的所有男同学的学号、姓名; (4)查询至少选修了两门课程(含两门)的学生学号; (5)查询王文芳同学选修的所有课程的课程号; (6)查询王文芳同学不学的课程的课程号; (7)查询所有上刘峰老师课程的学生学号; (8)查询所有选修“数据库原理”的学生的学号; (9)向学生表中插入一条记录(’2003001’,’吴红’,21,’女’);(1表示女,0表示男) (10)删除三张表中所有学号为20020001的学生信息; (11)把学号为20030002的学生的年龄改为22岁。

    正确答案: 1.学生表:
    Create table 学生表 (   
    学号 char (8) primary Key,   
    姓名 char(8),   
    年龄 int,   
    性别 bit

       
    课程表:
    Create table 课程表 (   
    课程号 char (7) primary Key, 
    课程名 char(20),   
    任课教师 char (8)

       
    成绩表:
    Create table 成绩表 (   
    学号 char (8),  
    课程号 char (7),   
    成绩 Numeric (4,2)

    2.Select课程号, 课程名 from课程表 where任课教师=’ 刘峰’
    3.Select 学号, 姓名 from 学生表 where 性别=1 and 年龄>20
    4.select 学号 from 成绩   group by 学号   having count(学号)>=2 
    5.Select 课程号 from 成绩表, 学生表 
      Where学生表.姓名=’ 王文芳’ and 学生表.学号=成绩表.学号
    6.select 课程号 from 成绩表 
      where 课程号 not in (select 课程号 from 学生表,成绩表 where 学生表.姓名='王文芳' and 学生表.学号=成绩表.学号)
    7.Select 学号 from 成绩表,课程表,学生表 
      Where 课程表.任课教师='刘世峰' and 课程表.课程号=成绩表.课程号 and 课程表.学号=成绩表.学号
    8.Select 学号 from 成绩表,课程表 
      where 课程表.课程名='数据库技术' and 课程表.课程号=成绩表.课程号
    9.insert into 学生表 values ('2003001','吴红','21',1) 
    10.Delete from学生表 where 学号=’ >20020001’   
    Delete from学生表 where 学号=’ 20020001’ 
    11. Update 学生表 set 年龄=’22’ where学号=’20030002’
    解析: 暂无解析