itgle.com

设有教师表(教师号,姓名,年龄,性别,所在系号),系表(系号,系名)。用户将非常频繁地在这两张表上执行如下查询:SELECT教师号,姓名,系名FROM教师表T JOIN系表D ON T.所在系号=D.系号;为了提高查询效率,下列最适合存储上述表数据的文件类型是( )。A.堆文件B.索引文件C.聚集文件D.散列文件

题目

设有教师表(教师号,姓名,年龄,性别,所在系号),系表(系号,系名)。用户将非常频繁地在这两张表上执行如下查询:SELECT教师号,姓名,系名FROM教师表T JOIN系表D ON T.所在系号=D.系号;为了提高查询效率,下列最适合存储上述表数据的文件类型是( )。

A.堆文件

B.索引文件

C.聚集文件

D.散列文件


相似考题
更多“设有教师表(教师号,姓名,年龄,性别,所在系号),系表(系号,系名)。用户将非常频繁地在这两张表上执 ”相关问题
  • 第1题:

    设教师表的结构为:教师号、姓名、性别、职称、工资、所在系。若要查询“陈静”教师所讲授的课程,并列出姓名和课程名,应使用的语句SELECT-SQL是______。

    A.SELECT 姓名,课程名FROM 教师表,授课表,课程表; WHERE 教师表.教师号=授课表.教师号AND 姓名=“陈静”

    B.SELECT姓名,课程名FROM 教师表,授课表,课程表; WHERE 教师表.教师号=授课表.教师号AND授课表.课程号=课程表.课程号; AND姓名=“陈静”

    C.SELECT姓名,课程名FROM 教师表,授课表,课程表; WHERE教师表.教师号=授课表.教师号AND授课表.教师号=课程表.课程号; AND姓名=“陈静”

    D.SELECT姓名,课程名FROM 教师表,授课表,课程表; WHERE授课表.课程号=课程表.课程号AND姓名=“陈静”


    正确答案:B
    解析:本查询是在教师表和授课表及课程表之间进行的,在表的连接条件中应有教师表和授课表按教师号连接、授课表和课程表按课程号连接的条件。选项A中缺少了授课表和课程表连接的条件,选项B是正确的,选项C在授课表和课程表连接的条件中连接字段错误,选项D中缺少了教师表和授课表连接的条件。

  • 第2题:

    “教师表”中有“职工号”“姓名”“工龄”和“系号”等字段,“学院表”中有“系名”和“系号”等字段,计算“计算机”系教师总数的命令是( )。

    A.SELECT COUNT(*)FROM教师表INNER JOIN学院表ON教师表,系号=学院表,系号WHERE系名=“计算机”

    B.SELECT COUNT(*)FROM教师表INNER JOIN学院表ON教师表,系号=学院表,系号0RDER BY教师表系号HAVING学院表,系名=“计算机”

    C.SELECT SUM(*)FROM教师表INNER JOIN学院表ON教师表,系号=学院表,系号GROUP BY教师表,系号

    D.SELECT SUM(*)FROM教师表INNER JOIN学院表ON教师表,系号=学院表,系号0RDER BY教师表,系号HAVING学院表,系名=“计算机”


    正确答案:A
    A。【解析]INNERJOIN运算为普通连接,组合两个表中的记录,只要在公共字段之中有相符的值。GROUPBY子句用来分组,HAVING子句用来从分组的结果中筛选行。

  • 第3题:

    ( 35 ) “ 教师表 ” 中有 “ 职工号 ” 、 “ 姓名 ” 、 “ 工龄 ” 和 “ 系号 ” 等字段,“ 学院表 ”中有 “ 系名 ” 和 “ 系号 ” 等字段,求教师总数最多的系的教师人数,正确的命令序列是

    A ) SELECT 教师表 . 系号 , COUNT ( * ) AS 人数 FROM 教师 表 , 学院表 ;

    GROUP BY 教师表 . 系号 INTO DBF TEMP

    SELECT MAX ( 人数 ) FROM TEMP

    B ) SELECT 教师表 . 系号 , COUNT ( * ) FROM 教师表 , 学院表 ;

    WHERE 教师表 . 系号 = 学院表 . 系号 GROUP BY 教师表 . 系号 INTO DBF TEMP

    SELECT MAX( 人数 ) FROM TEMP

    C ) SELECT 教师表 , 系号 ,COUNT(*) AS 人数 FROM 教师表 , 学院表 ;

    WHERE 教师表 . 系号 = 学院表 . 系号 GROUP BY 教师表 . 系号 TO FILE TEMP

    SELECT MAX( 人数 ) FROM TEMP

    D ) SELECT 教师表 . 系号 ,COUNT(*) AS 人数 FROM 教师表 , 学院表 ;

    WHERE 教师表 . 系号 = 学院表 . 系号 GROUP BY 教师表 . 系号 INTO DBF TEMP

    SELECT MAX( 人数 ) FROM TEMP


    正确答案:D

  • 第4题:

    “教师表”中有“职工号”“姓名”“工龄”和“系号”等字段,“学院表”中有“系名”和“系号”等字段,求教师总数最多的系的教师人数,正确的命令序列是( )。

    A.SELECT教师表,系号,COUNT(*)AS人数FROM教师表,学院表GROUP BY教师表,系号INTO DBF TEMP SELECT MAX(人数)FROM TEMP

    B.SELECT教师表,系号,COUNT(*)FROM教师表,学院表WHERE教师表,系号一学院表,系号GROUP BY教师表,系号INTO DBF TEMP SELECT MAX(人数)FROM TEMP

    C.SELECT教师表,系号,CoUNT(*)AS人数FROM教师表,学院表WHERE教师表,系号一学院表,系号GROUP BY教师表,系号TO FILE TEMP SELECT MAX(人数)FROM TEMP

    D.SELECT教师表,系号,COUNT(*)AS人数FRoM教师表,学院表WHERE教师表,系号一学院表,系号GROUP BY教师表,系导INTO DBF TEMP SELECT MAX(人数)FROM TEMP


    正确答案:D
    D。【解析】首先通过GROUPBY子句用来分组,将各系教师人数存入表TEMP中,然后再查询各组人数的最大值。

  • 第5题:

    34. “教师表”中有“职工号”、“姓名”、“工龄”和“系号”等字段,“学院表”中有“系名”和“系号”等字段。计算 “计算机”系老师总数的命令是( )。

    A.SELECT COUNT(*) FROM 老师表INNER JOIN 学院表;

    ON 教师表.系号=学院表.系号 WHERE 系名=”计算机”

    B. SELECT COUNT(*) FROM 老师表INNER JOIN 学院表;

    ON 教师表.系号=学院表.系号 ORDER BY 教师表.系号;

    HAVING 学院表.系名=” 计算机”

    C. SELECT COUNT(*) FROM 老师表INNER JOIN 学院表;

    ON 教师表.系号=学院表.系号GROUP BY 教师表.系号;

    HAVING 学院表.系名=” 计算机”

    D. SELECT SUM(*) FROM 老师表INNER JOIN 学院表;

    ON 教师表.系号=学院表.系号ORDER BY 教师表.系号;

    HAVING 学院表.系名=” 计算机”


    正确答案:A
    解析:这个题不需要分组也不需要排序,只要计数COUNT(*),条件是系名=”计算机”