更多“按部门号(deptno)及工资(sal)排序检索公司的员工信息(”相关问题
  • 第1题:

    检索每个部门职工工资的总和,要求显示部门名称和工资,正确的命令是

    部门表(部门号N(4)、部门名称C(10))

    职工表(部门号N(4)、职工号C(4)、姓名C(8)、工资N(7,2))

    A.SELECT 部门号,SUM(工资)FROM 部门表,职工表; WHERE 职工表.部门号=部门表.部门号; GROUP BY部门号

    B.SELECT 部门号,SUM(工资)FROM职工表; WHERE 职工表.部门号=部门表.部门号; GROUP BY职工表.部门号

    C.SELECT 部门号,SUM(工资)FROM 部门表,职工表; WHERE 职工表.部门号=部门表.部门号; ORDRE BY职工表.部门号

    D.SELECT 部门号,SUM(工资)FROM 部门表,职工表; WHERE 职工表.部门号=部门表.部门号; GROUP BY职工表.部门号


    正确答案:D
    解析:利用分组查询计算各个部门职工的工资总和,注意指定分组条件时,要指定数据表名称,否则系统提示部门号不惟一,必须加以限定。

  • 第2题:

    检索最少有5名职工的每个部门的职工基本工资的总额,正确的语句是( )。

    A.SELECT部门号,COUNT(*),SUM(基本工资)FROM职工; HAVING COUNT(*)>=5

    B.SELECT部门号,COUNT(*),SUM(基本工资)FROM职工; GROUP BY基本工资HAVING COUNT(*)>=5

    C.SELECT部门号,COUNT(*),SUM(基本工资)FROM职工; GROUP BY部门号HAVING COUNT(*)>=5

    D.SELECT部门号,COUNT(*),SUM(基本工资)FROM职工; GROUP BY部门号WHERE COUNT(*)>=5


    正确答案:C
    解析:在分组与计算查询语句中,使用HAVING子句可以对分组进一步加以控制。用这个子句定义这些组所必须满足的条件,以便将其包含在结果中,HAVING子句必须与GROUP BY短语同时使用。
    本题中先由GROUP BY子句按“部门号”对记录行进行分组:再执行COUNT()函数统计每组中有多少个记录,执行SUM()函数计算每个组的基本工资总和:最后执行HAVING子句,只有记录总数大于等于5的组才输出结果,即部门职工在5名(含)以上的。注意:此时输出的组记录是计算后的记录,即每组只包含一条记录,输出信息包括该部门的

  • 第3题:

    第下列各题使用如下数据。 部门(部门号C(2)、部门名称C(10)) 职工(部门号C(2)、职工号C(4)、姓名C(8)、基本工资 N(7,2)) 检索有职工的基本工资大于或等于“11”部门中任意一名职工工资的“部门号”,正确的语句是( )。

    A.SELECT DISTINCT部门号FROM职711 WHERE基本工资>=ANY (SELECT基本工资FROM职工WHERE部门号一”ll”)

    B.SELECT DISTINCT部门号FROM职工WHERE基本工资>=ALL (SELECT基本工资FROM职工WHERE部门号 一”ll”)

    C.SELECT DISTINCT部门号FROM职工WHERE基本工资>=ANY (SELECT MAX(基本工资)FROM职工WHERE部门号=”ll”)

    D.SELECT DlSTINcT部门号FROM职工WHERE基本工资>=ALL (SELECT MIN(基本工资)FROM职工WHERE部 门号=”11”)


    正确答案:B
    B。【解析】在SQL语句中可以利用ANY、ALL等量词进行查询。基本格式为:<表达式><比较运算符>[ANYIALLISOME](子查询)其中,ANY(任意的)和SOME(一些)表示只要子查询中存在符合条件的行,结果就成立;而ALL(所有的)只有子查询中的所有行都符合条件,结果才成立。本题中要求检索有职工的基本工资大于或等于“ll”部门中任意一名职工的工资的部门号,等价于其他部门职工的基本工资有大于或等于“ll”部门中所有职工的工资,因此要使用ALL短语。选项C和D的属于语法错误,SQL不支持此类型查询。

  • 第4题:

    检索最少有5名职工的每个部门的职工基本工资的总额( )。

    A.SELECT 部门号,COUNT(*),SUM(基本工资) FROM 职工; HAVING COUNT(*)>=5

    B.SELECT 部门号,COUNT(*),SUM(基本工资) FROM 职工; GROUP BY 基本工资 HAVING COUNT(*)>=5

    C.SELECT 部门号,COUNT(*),SUM(基本工资) FROM 职工; GROUP BY 部门号 HAVING COUNT(*)>=5

    D.SELECT 部门号,COUNT(*),SUM(基本工资) FROM 职工; GROUP BY 部门号 WHERE COUNT(*)>=5


    正确答案:C
    解析:在分组与计算查询语句中,使用HAVING子句可以对分组进一步加以控制。用这个子句定义这些组所必须满足的条件,以便将其包含在结果中,HAVING子句必须与GROUP BY短语同时使用。本题中先由GROUP BY子句按“部门号”对记录行进行分组;再执行COUNT()函数统计每组中有多少个记录,执行SUM()函数计算每个组的基本工资总和;最后执行HAVING子句,只有记录总数大于等于5的组才输出结果,即部门职工在5名(含)以上的。注意:此时输出的组记录是计算后的记录,即每组只包含一条记录,输出信息包括该部门的部门号、总人数和职工工资总和。

  • 第5题:

    现有雇员信息表(雇员号:主键,雇员名,部门号,工资)和部门信息表(部门号:主键,部 门名,地址)在雇员信息表中,哪个属性是外键?

    A.雇员号

    B.雇员名

    C.部门号

    D.工资


    正确答案:C
    解析:所谓外键是指关系中的某个属性或属性组虽不是该关系的主码或只是主码的一部分,但却是另一个关系的主码。在雇员信息表中部门号是部门信息表的主码,所以部门号是外键。

  • 第6题:

    在数据库的如下两个表中,若雇员信息的主键是雇员号,部门信息表的主键是部门号,在下列所给的操作中,哪个操作不能执行?

    雇员信息表:

    雇员号雇员名部门号工资001

    张山022000010

    王宏达011200056

    马林生021000101

    赵敏041500

    部门信息表

    部门号部门名主任01

    业务部李建02

    销售部应伟东03

    服务部周垠04

    财务部陈力胜

    A.从雇员信息表中删除行(’010’,’王宏达’,’01’,1200)

    B.将行(’102’,’赵敏’,’01’,1500)插入到雇员信息表中

    C.将雇员信息表中雇员号=’010’的工资改为1600元

    D.将雇员信息表中雇员号=’101’的部门号改为’05’


    答案:D

  • 第7题:

    检索公司员工中姓张的员工信息。显示字段:empno、ename、deptno。


    正确答案:select empno,ename,deptno from emp where ename like ‘张%’。

  • 第8题:

    检索工资等级高于smith的员工信息。


    正确答案:select * from emp e join salgrade s on (e.sal between s.losal and s.hisal) where s.grade>(select distinct s.grade from emp e join salgrade s on ((select sal from emp where ename='SMITH') between s.losal and s.hisal))。

  • 第9题:

    检索出员工的总工资及平均工资。


    正确答案:select sum(sal),avg(sal) from emp。

  • 第10题:

    钱会计要统计公司各部门的工资总额,做了以下工作:①按员工姓名顺序,建立了包含工号、姓名、部门、工资等字段的Excel工作表,并输入了所有员工的相关信息②选定相关的数据区域③通过数据“分类汇总”出各部门的工资总额④按部门递减的顺序排序这些工作的正确顺序是()

    • A、①、②、③、④
    • B、②、①、④、③
    • C、①、②、④、③
    • D、③、①、②、④

    正确答案:C

  • 第11题:

    检索和名叫SCOTT的员工相同工资的员工信息,但不显示SCOTT。显示字段:员工号、员工名、工资。


    正确答案:select empno,ename,sal from emp where sal =(select sal from emp where ename='SCOTT') and ename!='SCOTT'。

  • 第12题:

    单选题
    取出工资在2000到3000元(包括上下限)之间的员工()
    A

    select * from emp wher sal in (2000,3000);

    B

    select * from emp wher sal like (2000,3000);

    C

    select * from emp wher sal = (2000,3000);

    D

    select * from emp wher sal between 2000 and 3000;


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

  • 第13题:

    到(35)题使用如下数据表。

    部门(部门号C(2)、部门名称C(10) )

    职工(部门号C(2)、职工号C(4)、姓名C(8)、基本工资N(7,2) )

    检索有职工的基本工资大于或等于“11”部门中任意一名职工工资的“部门号”,正确的语句是( )。

    A.SELECT DISTmCT部门号FROM职工WHERE基本工资>=ANY; (SELECT基本工资FROM职工WHERE部门号="11")

    B.SELECT DISTINC部门号FROM职工WHERE基本工资>=ALL; (SELECT基本工资FROM职工WHERE部门号="11")

    C.SELECT DISTINCT部门号FROM职工WHERE基本工资>=ANY; (SELECT MAX(基本工资)FROM职工WHERE部门号="11")

    D.SELECT DISTINCT部门号FROM职工WHERE基本工资>=ALL; (SELECT MIN(基本工资)FROM职工WHERE部门号="11")


    正确答案:B
    解析:在SQL语句中可以利用ANY、ALL等量词进行查询。基本格式为:
    表达式>比较运算符>[ANY|ALL|SOME](子查询)
    其中,ANY(任意的)和SOME(一些)表示只要子查询中存在符合条件的行,结果就成立:而ALL(所有的)只有子查询中的所有行都符合条件,结果才成立。
    本题中要求检索有职工的基本工资大于或等于“11”部门中任意一名职工的工资的部门号,等价于其他部门职工的基本工资有大于或等于“11”部门中所有职工的工资,因此要使用ALL短语。选项C)和D)的属于语法错误,SQL不支持此类型查询。

  • 第14题:

    检索每个部门的职工工资的总和,要求显示“部门名称”和“基本工资”,正确的语句是( )。

    A.SELECT部门名称,SUM(基本工资)FROM部门,职工; WHERE职工,部门号=部门.部门号; ORDER BY部门号

    B.SELECT部门名称,SUM(基本工资)FROM部门,职工; WHERE职工,部门号=部门.部门号; GROUP BY部门号

    C.SELECT部门名称,SUM(基本工资)FROM部门,职工; WHERE职工.部门号=部门.部门号; ORDRE BY职工.部门号

    D.SELECT部门名称,SUM(基本工资)FROM部门,职工; WHERE职工.部门号=部门.部门号; GROUP BY职工.部门号


    正确答案:D
    解析:进行SQL简单计算查询时,还可以加上GROUP BY子句进行分组计算查询。
    通常来说,一个计算函数的范围是满足WHERE子句指定条件的所有记录。当加上GROUP BY子句后,系统会将查询结果按指定列分成集合组。当一个计算函数和一个GROUP BY子句一起使用时,计算函数的范围变为每组所有的记录。
    本题通过“GROUP BY职工.部门号”可以先将记录按“部门号”分组,然后再通过函数“SUM(基本工资)”对每组记录求和;另外,在指定分组条件时,因为两个表中都存在相同的字段,即“部门号”,因此要指定分组的字段来

  • 第15题:

    检索有职工的基本工资大于或等于“11”部门中任意一名职工工资的“部门号”,正确的命令是,( )。

    A.SELECT DISTINCT 部门号 FROM 职工 WHERE 基本工资>=ANY; (SELECT 基本工资 FROM 职工 WHERE 部门号="11")

    B.SELECT DISTINCT 部门号 FROM 职工 WHERE 基本工资>=ALL; (SELECT 基本工资 FROM 职工 WHERE 部门号="11")

    C.SELECT DISTINCT 部门号 FROM 职工 WHERE 基本工资>=ANY; (SELECT MAX(基本工资) FROM 职工 WHERE 部门号="11")

    D.SELECT DISTINCT 部门号 FROM 职工 WHERE 基本工资>=ALL; (SELECT MIN(基本工资) FROM 职工 WHERE 部门号="11")


    正确答案:B
    解析:在SQL语句中可以利用ANY、ALL等量词进行查询。基本格式为:
    表达式>比较运算符>[ANY|ALL|SOME](子查询)
    其中,ANY(任意的)和SOME(一些)表示只要子查询中存在符合条件的行,结果就成立;而ALL(所有的)只有子查询中的所有的行都符合条件,结果才成立。
    本题中要求检索有职工的基本工资大于或等于“11”部门中任意一名职工的工资的部门号,等价于其他部门职工的基本工资有大于或等于“11”部门中所有职工的工资,因此要使用ALL短语。选项C)和D)的属于语法错误,SQL不支持此类型查询。

  • 第16题:

    现有雇员信息表(雇员号:主键,雇员名,部门号,工资)和部门信息表(部门号:主键,部门名,地址)在雇员信息表中,哪个属性是外键?

    A.雇员号

    B.雇员名

    C.部门号

    D.工资


    正确答案:C
    解析:所谓外键是指关系中的某个属性或属性组虽不是该关系的主码或只是主码的一部分,但却是另一个关系的主码。在雇员信息表中部门号是部门信息表的主码,所以部门号是外键。

  • 第17题:

    检索每个部门的职工工资的总和,要求显示“部门名称”和“基本工资”.正确的语句是( )。

    A.SELECT部门名称,SUM(基本工资)FR0M部门, 职工 WHERE职工.部门号=部门.部门号 ORDER BY部门号

    B.SELECT部门名称,SUM(基本工资)FROM部门, 职1:WHERE职工.部门号=部门.部门号 GROUP BY部门号

    C.SELECT部门名称,SUM(基本工资)FROM部门,职工 WHERE职工部门号=部门.部门号 0RDRE BY职工部门号

    D.SELECT部门名称,SUM(基本工资)FROM部门, 职工 WHERE职工.部门号=部门.部门号 GROUP BY职工.部门号


    正确答案:D
    D。【解析】进行SQL简单计算查询时,还可以加上GROUPBY子句进行分组计算查询。通常来说,一个计算函数的范围是满足WHERE子句指定条件的所有记录。当加上GRUPBY子句后,系统会将查询结果按指定列分成集合组。当一个计算函数和一个GROUPBY子句一起使用时,计算函数的范围变为每组所有的记录。本题通过“GROUPBY职工.部门号”可以先将记录按“部门号”分组,然后再通过函数“SUM(基本工资)”对每组记录求和;另外,在指定分组条件时,因为两个表中都存在相同的字段,即“部门号”,因此要指定分组的字段来自哪个数据表,否则系统出现“部门号不唯一”的错误提示;0RDERBY是对查询结果进行排序的短语,没有分组的功能。

  • 第18题:

    设有“职工”表,表结构如下:

    职工(部门号C(2)、职工号C(4)、姓名C(8)、年龄N(2)、工资N(7,2))

    检索最少有3名职工的每个部门的职工工资的总额( )。

    A)SELECT部门号,COUNT(﹡),SUM(工资)FROM职工;

    HAVING COUNT(﹡)﹥=3

    B)SELECT部门号,COUNT(﹡),SUM(1资)FROM职工;

    GROUP BY基本工资HAVING COUNT(﹡)>=3

    C)SELECT部门号,COUNT(﹡),SUM(1资)FROM职工;

    GROUP BY部门号HAVING COUNT(﹡)>=3

    D)SELECT部门号,COUNT(﹡),SUM(T资)FROM职工;

    GROUP BY部门号WHERE COUNT(﹡)>=3


    正确答案:C
    根据题意,本题应按照“部门号”分组, COUNT(*)>=3为限定分组的条件。在SQL语句中,分组使用GROUP BY子句,HAVING子句用来限定分组的条件。SUM函数用来求和, COUNT0函数用来计数。

  • 第19题:

    检索出10部门或20部门的员工信息,显示字段:empno、ename、deptno。


    正确答案:select empno,ename,deptno from emp where deptno=10 or deptno=20。

  • 第20题:

    检索与30部门员工工资等级相同的员工姓名与工资。


    正确答案:select * from emp e join salgrade s on (e.sal between s.LOSAL and s.HISAL) where s.grade=(select distinct s.grade from emp e join salgrade s on ((select avg(sal) from emp where deptno=30) between s.LOSAL and s.HISAL))。

  • 第21题:

    检索10部门中1980年2月份之前入职的员工信息。显示:empno、ename、deptno、hiredate。


    正确答案:select * from emp where deptno=10 and hiredate

  • 第22题:

    检索工资在2000元至4000元之间的员工信息。


    正确答案:select * from emp where sal between 2000 and 4000。

  • 第23题:

    检索每位员工的年收入(基本计算方法为:(月工资sal+月奖金comm)*12 ),显示字段:员工号、员工名、年收入(要求年收入有别名‘年收入’)。


    正确答案:select empno,ename,((sal+nvl(comm,0))*12) as 年收入 from emp。