计算机二级

第 16~19 题使用如下的“仓库”表和“职工”表,表结构如下:仓库(仓库号C(3)、所在地C(8)、人数N(2))职工(仓库号C(3)、职工号C(2)、姓名C(8)、工资I)第 16 题 检索有职工的工资大于或等于“WH1”仓库中所有职工“工资”的仓库号,正确的命令是( )。A)SELECT DISTINCT仓库号FROM职工WHERE工资>=ANY(SELECT MAX(工资)FROM职工WHERE仓库号=”WH1”)B)SELECT DISTINCT仓库号FROM职工WHERE工资>=ANY:(SE

题目

第 16~19 题使用如下的“仓库”表和“职工”表,表结构如下:

仓库(仓库号C(3)、所在地C(8)、人数N(2))

职工(仓库号C(3)、职工号C(2)、姓名C(8)、工资I)

第 16 题 检索有职工的工资大于或等于“WH1”仓库中所有职工“工资”的仓库号,正确的命令是( )。

A)SELECT DISTINCT仓库号FROM职工WHERE工资>=ANY

(SELECT MAX(工资)FROM职工WHERE仓库号=”WH1”)

B)SELECT DISTINCT仓库号FROM职工WHERE工资>=ANY:

(SELECT工资FROM职工WHERE仓库号=”WH1”)

C)SELECT DISTINCT仓库号FROM职工WHERE工资>=ALL:

(SELECT工资FROM职工WHERE仓库号=”WH1”)

D)SELECT DISTINCT仓库号FROM职工WHERE工资>=ALL:

(SELECT MAX(工资)FROM职工WHERE仓库号=”WH1”)

如果没有搜索结果,请直接 联系老师 获取答案。
如果没有搜索结果,请直接 联系老师 获取答案。
相似问题和答案

第1题:

有如下SQL语句:

SELECT DISTINCT 仓库号 FROM 职工表 WHERE 工资>=ALL;

(SELECT 工资 FROM 职工表 WHERE 仓库号="A1")

执行语句后,显示查询到的仓库号有

A.A1

B.A3

C.A1,A2

D.A1,A3


正确答案:D
解析:本题查询的是职工的工资大于或等于A1仓库中所有职工工资的仓库号。在SQL语句中可以使用ANY,ALL等量词进行查询。其中ANY在进行比较运算时,只要子查询中有一行能使结果为真,则结果就为真;而ALL则要求子查询中的所有行都使结果为真时,结果才为真。

第2题:

有“仓库”表和“职工”表,检索仓库中基本工资大于3000元的职工姓名和他们所在的仓库名

A.SELECT姓名,仓库名FROM职工; WHERE基本工资>3000

B.SELECT姓名,仓库名FROM仓库; WHERE基本工资>3000

C.SELECT姓名,仓库名FROM职工,仓库; WHERE(基本工资>3000)OR(职工.仓库号=仓库.仓库号)

D.SELECT姓名,仓库名FROM职工,仓库; WHERE(基本工资>3000)AND(职工.仓库号=仓库.仓库号)


正确答案:D
解析:本题中SQL查询属于多表联接查询,注意条件中关联字段的选取以及逻辑条件的设置。选项A)和选项B)中都缺少查询的数据表,且查询条件有误;选项C)中查询条件错误,应使用AND进行条件连接,而不是OR。

第3题:

向“仓库”表中新增一个“人数”字段,数据类型为数值型,宽度为2,正确的命令语句是( )。

A)CREATE TABLE仓库ALTER人数N(2)

B)CREATE TABLE仓库ADD FIELDS人数N(2)

C)ALTER TABLE仓库ALTER人数N(2)

D)ALTER TABLE仓库ADD人数N(2)


正确答案:D

第4题:

求至少有两个职工的每个仓库的平均工资

A.SELECT 仓库号,COUNT(*),AVG(工资)FROM 职工表; HAVING COUNT(*)>=2

B.SELECT 仓库号,COUNT(*),AVG(工资)FROM 职工表; GROUP BY 仓库号 HAVING COUNT(*)>=2

C.SELECT 仓库号,COUNT(*),AVG(工资)FROM 职工表; GROUP BY 仓库号 SET COUNT(*)>=2

D.SELECT 仓库号,COUNT(*),AVG(工资)FROM 职工表; GROUP BY 仓库号 WHERE COUNT(*)>=2


正确答案:B
解析:本题利用SQL分组查询的功能,计算至少有两个职工的每个仓库的平均工资,利用HAVING子句可以对分组条件做进一步限定。

第5题:

检索至少有一名职工信息的“仓库号”及仓库的“所在地”和“人数”,正确的SQL命令是( )。

A.SELECT 仓库号,所在地,人数 FROM 仓库 WHERE IN; (SELECT 仓库号 FROM 职工 WHERE 仓库号=职工.仓库号)

B.SELECT 仓库号,所在地,人数 FROM 仓库 WHERE 仓库号 IN; SELECT 仓库号 FROM 职工 WHERE 仓库号=仓库.仓库号)

C.SELECT 仓库号,所在地,人数 FROM 仓库 WHERE NOT EXISTS; (SELECT 仓库号 FROM 职工 WHERE 仓库号=仓库.仓库号)

D.SELECT 仓库号,所在地,人数 FROM 仓库 WHERE EXISTS; (SELECT 仓库号 FROM 职工 WHERE 仓库号=仓库.仓库号)


正确答案:D
解析:本题中EXISTS属于SQL查询谓词,EXISTS或NOT EXISTS是用来检查在子查询中是否有结果返回,即存在元组或不存在元组,子查询要用圆括号括起来。本题SQL查询中的子查询查询的是“职12”表中“仓库号”等于“仓库”表中“仓库号”的数据,然后在外层查询中检索“仓库”表中的“仓库号”是否存在与子查询的查询结果中,将存在的“仓库号”显示其“仓库号”、“所在地”和“人数”的信息。

第6题:

在考生文件夹下有仓库数据库ck3,包括如下所示两个表文件:

ck(仓库号C(4),城市C(8),面积N(4))

zg(仓库号C(4),职工号C(4),工资N(4))

设计一个名为zg3的菜单,菜单中有两个菜单项“统计”和“退出”。

程序运行时,单击“统计”菜单项应完成下列操作:检索出所有职工的工资都大于1220元(不包括 1220元)的职工所管理的仓库信息,将结果保存在whl数据表(whl为自由表)文件中,该文件的结构和 ck数据表文件的结构一致,并按面积升序排序。

单击“退出”菜单项,程序终止运行。

(注意:相关数据表文件存在于考生文件夹下)


正确答案:在命令窗口输入命令:CREATE MENU zg3系统弹出一个“新建菜单”对话框在对话框中单击“菜单”按钮进入菜单设计器环境。根据题目要求首先输入两个主菜单名称“统计”和“退出”接着在“统计”菜单行的“结果”下拉框中选择“过程”选项(用于编写程序)在“退出”菜单行的“结果”下拉框中选择“命令”选项如图3-11所示。 单击“统计”菜单行中的“编辑”按钮进入程序设计的编辑窗口在命令窗口中输入如下程序段: *********“统计”菜单命令的程序设计*********** SET TALK OFF SET SAFETY OFF OPEN DATABASE ck3.dbc USE ck SELECT * FROM ck WHERE 仓库号 NOT IN; (SELECT 仓库号 FROM zg WHERE 工资=1220); AND 仓库号 IN(SELECT 仓库号 FROM zg); ORDER BY面积; INTO TABLE whl.dbf CLOSE ALL SET TALK ON 在“退出”菜单项的“命令”文本框中编写程序代码:SET SYSMENU TO DEFAULT。 选择菜单命令“菜单”—“生成”生成一个菜单文件zg3.mpr。关闭设计窗口在命令窗口输入命令: DO zg3.mpr看到Visual FoxPro的菜单栏被新建的菜单所代替单击“退出”菜单命令将恢复系统菜单。 执行“统计”菜单命令后系统自动生成新数据表文件whl.dbf用来保存查询结果。
在命令窗口输入命令:CREATE MENU zg3,系统弹出一个“新建菜单”对话框,在对话框中单击“菜单”按钮,进入菜单设计器环境。根据题目要求,首先输入两个主菜单名称“统计”和“退出”,接着在“统计”菜单行的“结果”下拉框中选择“过程”选项(用于编写程序),在“退出”菜单行的“结果”下拉框中选择“命令”选项,如图3-11所示。 单击“统计”菜单行中的“编辑”按钮,进入程序设计的编辑窗口,在命令窗口中输入如下程序段: *********“统计”菜单命令的程序设计*********** SET TALK OFF SET SAFETY OFF OPEN DATABASE ck3.dbc USE ck SELECT * FROM ck WHERE 仓库号 NOT IN; (SELECT 仓库号 FROM zg WHERE 工资=1220); AND 仓库号 IN(SELECT 仓库号 FROM zg); ORDER BY面积; INTO TABLE whl.dbf CLOSE ALL SET TALK ON 在“退出”菜单项的“命令”文本框中编写程序代码:SET SYSMENU TO DEFAULT。 选择菜单命令“菜单”—“生成”,生成一个菜单文件zg3.mpr。关闭设计窗口,在命令窗口输入命令: DO zg3.mpr,看到Visual FoxPro的菜单栏被新建的菜单所代替,单击“退出”菜单命令将恢复系统菜单。 执行“统计”菜单命令后,系统自动生成新数据表文件whl.dbf用来保存查询结果。 解析:本大题考查的主要是利用SQL的嵌套查询来完成两个数据表之间的记录查找,此处应注意运算符IN和NOT IN的使用;在菜单的设计过程中主要是注意两个菜单命令在“结果”下拉框中应选择的类型。

第7题:

有如下关系:[*]查询、显示表中记录的全部属性值,显示顺序按仓库号相同按工资升序排序。实现上述功能的SQL查询语句为SELECT*FROM职工【 】BY仓库号,工资。


正确答案:ORDER
ORDER 解析:应该使用查询语句SELECT,使用通配符“*”表示输出全部属性,使用谓词ORDER BY和两个属性名实现多重排序。

第8题:

检索在广州仓库工作的职工记录,要求显示职工号和工资字段,正确的命令是

仓库表

仓库号 所在城市

A1 北京

A2 上海

A3 天津

A4 广州

职工表

职工号 仓库号 工资

M1 A1 2000.00

M3 A3 2500.00

M4 A4 1800.00

M5 A2 1500.00

M6 A4 1200.00

A.SELECT 职工号,工资 FROM 职工表; WHERE 仓库表.所在城市="广州"

B.SELECT 职工号,工资 FROM职工表; WHERE 仓库表.仓库号=职工表.仓库号; AND 仓库表.所在城市="广州"

C.SELECT 职工号,工资 FROM 仓库表,职工表; WHERE 仓库表.仓库号=职工表.仓库号; AND 仓库表.所在城市="广州"

D.SELECT 职工号,工资 FROM 仓库表,职工表; WHERE 仓库表.仓库号=职工表.仓库号; OR 仓库表.所在城市="广州"


正确答案:C
解析:本题中,通过仓库号字段将仓库表和职工表进行联接,查询仓库所在地是"广州"的记录。

第9题:

利用SQL语句,检索仓库中至少有一名职工的仓库信息,正确的命令是______.

A.SELECT。FROM仓库表WHEREIN; (SELECT仓库号FROM职工表)

B.SELECT 2p FROM仓库表WHERENOTm; (SELECT仓库号FROM职工表)

C.SELECT::FROM仓库表WHERE仓库号EXISTS; (SELECT*FROM职工表WHERE仓库号:仓库表.仓库号)

D.SELECT*FROM仓库表WHEREEXISTS; (SEL。E(:T*FROM职工表WHERE仓库号:仓库表.仓库号)


正确答案:D
解析:利用EXISTS或NOTEXISTS,可用来检查在子查询中是否有结果返回。利用运算符IN来表示,可写成如下格式: SELECT*FROM仓库表WHERE仓库IN; (SELECT仓库号FROM职工表)

第10题:

有如下SQL语句:

SELECT SUM(工资) FROM 职工表 WHERE 仓库号 IN;

(SELECT 仓库号 FROM 仓库表 WHERE 所在城市="北京" OR 所在城市="上海")

执行语句后,工资总和是

A.3500.00

B.3000.00

C.5000.00

D.10500.00


正确答案:A
解析:本题SQL查询语句的功能是统计在北京和上海仓库工作的职工的工资总和。

更多相关问题