使用如下三个表 部门.dbf:部门号C(8),部门名C(12),负责人C(8) 职工.dbf:职工号C(10),部门号C(8),姓名C(8),性别C(2),出生日期D(8) 工资.dbf:职工号C(10),基本工资N(8,2),津贴N(8,2),奖金N(8,2),扣除N(8,2) 查询每个部门年龄最长者的信息,要求包括所在部门名和最长者的出生日期。正确的命令是( )。A. SELECT部门名,MIN(出生日期)FROM部门JOIN职工; ON部门.部门号=职工.部门号GROUP BY部门号B. SELEC

题目

使用如下三个表 部门.dbf:部门号C(8),部门名C(12),负责人C(8) 职工.dbf:职工号C(10),部门号C(8),姓名C(8),性别C(2),出生日期D(8) 工资.dbf:职工号C(10),基本工资N(8,2),津贴N(8,2),奖金N(8,2),扣除N(8,2) 查询每个部门年龄最长者的信息,要求包括所在部门名和最长者的出生日期。正确的命令是( )。

A. SELECT部门名,MIN(出生日期)FROM部门JOIN职工; ON部门.部门号=职工.部门号GROUP BY部门号

B. SELECT部门名,MAX(出生日期)FROM部门JOIN职工; ON部门.部门号=职工.部门号GROUP BY部门号

C. SELECT部门名,MIN(出生Et期)FROM部门JOIN职工; WHERE部门.部门号=职工.部门号GROUP BY部门号

D. SELECT部门名,MAX(出生Et期)FROM部门JOIN职工; WHERE部门.部门号=职工.部门号GROUP BY部门号


相似考题
更多“使用如下三个表 部门.dbf:部门号C(8),部门名C(12),负责人C(8) 职工.dbf:职工号C(10),部门号C(8) ”相关问题
  • 第1题:

    (30)~(35)题使用如下三个条件: 部门.DBF:部门号C(8),部门号C(12),负责人C(6),电话C(16) 职工.DBF:部门号C(8),职工号C(10),姓名C(8),性别C(2),出生日期D 工资.DBF:职工好C(10),基本工资N(8.2),津贴(8.2),奖金N(8.2),扣除N(8.2)(30)查询职工实发工资的正确命令是A)SELECT姓名,(基本工资+津贴+奖金?扣除)AS实发工资FROM工资B)SELECT姓名,(基本工资+津贴+奖金?扣除)AS实发工资FROM工资;WHERE职工.职工号=工资.职工号C)SELECT姓名,(基本工资+津贴+奖金?扣除)AS实发工资;FROM工资,职工WHERE职工.职工号=工资.职工号D)SELECT姓名,(基本工资+津贴+奖金?扣除)AS实发工资;FROM工资JOIN职工 WHERE职工.职工号=工资.职工号


    正确答案:C
    本题为简单的条件查询,WHERE子句后面的条件:职工.职工号=工资.职工号,可以实现将数据表职工和工资表连接起来进行查询,并且将工资表的几个字段求和计算得到职工的实发工资。选项C为正确答案,选项A缺少查询条件,选项B的查询条件错误,选项D使用的连接方法是错误的。

  • 第2题:

    使用如下三个表,回答下列各题: 部门.dbf:部门号C(8),部门名C(12),负责人C(8) 职工.dbf:职工号C(10),部门号C(8),姓名C(8),性别C(2),出生日期D(8) 工资.dbf:职工号C(10),基本工资N(8,2),津贴N(8,2),奖金N(8,2),扣除N(8,2) {TS}查询职工实发工资的正确命令是( )。

    A. SELECT姓名,(基本工资+津贴+奖金一扣除)As实发工资FROM工资

    B. SELECT姓名,(基本工资+津贴+奖金一扣除)As实发工资FROM工资; WHERE职工.职工号=工资.职工号

    C. SELECT姓名,(基本工资+津贴+奖金一扣除)AS实发工资; FROM工资,职工WHERE职工.职工号=工资.职工号

    D. SELECT姓名,(基本工资+津贴+奖金一扣除)AS实发工资; FROM工资JOIN职工WHERE职工.职工号=工资.职工号


    正确答案:C
    在SQL查询语句中,续行符号应使用分号(;)。进行多表查询,指定两表关键字进行连接时,JOIN短语应该与0N短语连用。

  • 第3题:

    第 31~33 使用如下三个表:

    部门.dbf:部门号C(8),部门名C(12),负责人C(6)

    职工.dbf:部门号C(8),职工号C(10),姓名C(8),性别C(2),出生日期D(8)

    工资.dbf:职工号C(10),基本工资N(8.2),津贴N(8.2),奖金N(8.2)

    第 31 题 查询每个部门年龄最小者的信息,要求得到的信息包括部门名和最长者的出生日期。正确的命令是( )。

    A)SELECT部门名,MIN(出生日期)FROM部门JOIN职工:

    WHERE部门.部门号=职工.部门号GROUP BY部门名

    B)SELECT部门名,MIN(出生日期)FROM部门JOIN职工:

    ON部门.部门号=职工.部门号GROUP BY部门名

    C)SELECT部门名,MAX(出生日期)FROM部门JOIN职工:

    ON部门.部门号=职工.部门号GROUP BY部门名

    D)SELECT部门名,MAX(出生日期)FROM部门JOIN职工:


    正确答案:C
    SQL语言的数据查询功能的语法一般格式如下:
    SELECT<目标列表达式>
    FROM[[<表名1>|<视图名1>]
    [[INNE]
    JOIN<表名2>|<视图名1>]…
    [ON<联接条件>]…]
    FROM[[<数据库名>]<owner>     
    {<表名>|<视图名>}
    [,[[<数据库名>.]<owner>.
    {<表名>|<视图名>}…
    [WHERE<条件表达式>]
    [GROUP BY<列名1>
    [HAVING<内部函数表达式>]]
    [ORDER By<列名2>{ASC/DESC}]
    语句的功能是从FROM子句列出的表中,按照WHERE子句中给出的条件,找出满足条件的元组,在按SELECT子句中给出的目标列表达式,选出元组中的列值形成结果表。MAX函数表示求最大值。

  • 第4题:

    查询有10名以上(含10名)职工的部门信息(部门名和职工人数),并按职工人数降序排序。正确的命令是A)SELECT部门名,COUNT(职工号)AS职工人数; FROM部门,职工WHERE部门.部门号=职工.部门号; GROUP BY部门名HAVING COUNT(*)>=10; ORDER BY COUNT(职工号)ASCB)SEIECT部门名,COUNT(职工号)AS职工人数; FROM部门,职工WHERE部门.部门号=职工.部门号; GROUP BY部门名HAVING COUNT(*)>=10; ORDER BY COUNT(职工号)DESCC)SELECT部门名,COUNT(职工号)AS职工人数;FROM部门,职工WHERE部门.部门号=职工.部门号; GROUP BY部门名HAVING COUNT(*)>=10; ORDER BY职工人数ASCD)SELECT一部门名,COUNT(职工号)As职工人数;FROM部门,职工WHERE部门.部门号一职工.部门号; GROUP BY部门名HAVING COUNT(*)>=10; ORDER BY职工人数DESC


    正确答案:D
    本题考查使用COUNT()函数来构造复杂查询,分组条件GROUP BY部门名HAVIN COUNT(*)>10表示部门人数大于10人。另外可以用排除法求解,首先可以排除选项A和选项C,这两个选项中ORDER BY子句后的关键字是ASC表示升序,不符合题意。选项B的错误在于没有使用职工人数作为排序关健字。

  • 第5题:

    以下5题使用如下三个条件:

    部门.DBF:部门号C(8),部门名C(12),负责人C(6),电话C(16)

    职工.DBF:部门号C(8),职工号C(10),姓名C(8),性别C(2),出生日期D

    工资.DBF:职工号C(10),基本工资N(8.2),津贴(8.2),奖金N(8.2),扣除N(8.2)

    查询职工实发工资的正确命令是

    A.SELECT 姓名,(基本工资+津贴+奖金-扣除)AS实发工资FROM工资

    B.SELECT 姓名,(基本工资+津贴+奖金-扣除)AS实发工资FROM工资; WHERE 职工.职工号=工资.职工号

    C.SELECT 姓名,(基本工资+津贴+奖金-扣除)AS实发工资; FROM工资,职工WHERE职工.职工号=工资.职工号

    D.SELECT姓名,(基本工资+津贴+奖金-扣除)AS实发工资; FROM工资JOIN职工WHERE职工.职工号=工资.职工号


    正确答案:C
    解析:本题为简单的条件查询,WHERE子句后面的条件:职工.职工号=工资.职工号,可以实现将数据表职工和工资表连接起来进行查询,并且将工资表的几个字段求和计算得到职工的实发工资。选项C为正确答案,选项A缺少查询条件,选项B的查询条件错误,选项D使用的连接方法是错误的。