单选题
~(35)题使用如下的“仓库”表和“职工”表,表结构如下:
仓库(仓库号C(3)、所在地C(8)、人数N(2))
职工(仓库号C(3)、职工号C(2)、姓名C(8)、工资I)
单选题
检索有职工的工资大于或等于“WH1”仓库中所有职工“工资”的仓库号,正确的命令是{{U}} {{/U}}。
- 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")
【正确答案】
C
【答案解析】[解析] 选项C) 中的SQL语句通过子查询检索“WH1”仓库中所有职工的工资,然后在主查询中检索有职工工资大于子查询所查的工资的记录,即大于所有WH1中所有职工工资的职工所在的仓库号,DISTINCT短语的功能是去掉查询结果中重复的记录。
在SQL,语句中可以利用ANY、ALL等量词进行查询。其中,ANY(任意的)和SOME(一些)表示只要予查询中存在符合条件的行,结果就成立;而ALL(所有的)只有子查询中的所有的行都符合条件,结果才成立。
单选题
有如下SQL语句:
INSERT
INTO职工VALUES("WH4","E15","张清",2800)
在命令窗口执行该命令后{{U}}
{{/U}}。
- A. 向表中任意位置插入一条新记录
- B. 在当前记录之前,插入一条新语句
- C. 在当前记录之后,插入一条新语句
- D. 在表末尾新增一条记录
【正确答案】
D
【答案解析】[解析] SQL中,插入记录的命令格式为:
INSER IINTO<表名>[(字段名1[,字段名2,…])];
VALUES(表达式1[,表达式2,…])
该命令默认的是向表末尾新增一条记录,注意插入的记录值要与相应的字段类型一致。
单选题
检索最少有4名职工的仓库的职工平均工资{{U}} {{/U}}。
- A. SELECT仓库号,COUNT(*)AS人数,AVG(工资)AS平均工资FROM职工; GROUP BY仓库号WHERE
COUNT(*)>=4
- B. SELECT仓库号,COUNT(*)AS人数,AVG(工资)AS平均工资FROM职工; GROUP
BY仓库号HAVING COUNT(*)>=4
- C. SELECT仓库号,COUNT(*)AS人数,AVG(工资)AS平均工资FROM职工; GROUP BY职工号WHERE
COUNT(*)>=4
- D. SELECT仓库号,COUNT(*)AS人数,AVG(工资)AS平均工资FROM职工; GROUP
BY职工号HAVING COUNT(*)>=4
【正确答案】
B
【答案解析】[解析] 本题中先由GROUP BY子旬按“仓库号”对记录行进行分组;再执行COUNT()函数统计每组中有多少个记录,执行AVG()数计算每个组的平均工资:最后执行HAVING予旬,只有记录总数大于等于4的组才输出结果,即仓库职工在4名(含)以上的,注意,此时输出的组记录是计算后的记录,即每组只包含一条记录,输出信息包括该仓库的仓库号、人数和平均工资。
单选题
检索至少有一名职工信息的“仓库号”及仓库的“所在地”和“人数”,正确的SQL命令是{{U}} {{/U}}。
- 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是用来检查在子查询中是否有结果返回,即存在元组或不存在元组,子查询要用圆括号括起来。选项D) 的SQL查询中的子查询查询的是“职工”表中“仓库号”等于“仓库”表中“仓库号”的数据,然后在外层查询中检索“仓库”表中的“仓库号”是否存在于子查询的查询结果中,将存在的“仓库号”显示其“仓库号”、“所在地”和“人数”的信息。
单选题
如果将一个数据表设置为“包含”状态,那么系统连编后,该数据库表将{{U}} {{/U}}。
- A. 成为自由表
- B. 包含在数据库中
- C. 可以随时编辑修改
- D. 不能编辑修改
单选题
如果根的层次为1,则具有30个结点二叉树的最小高度为______。
【正确答案】
B
【答案解析】[解析] 高度为i的二叉树的最多结点为2i-1。当i=4时,结点最多为15;当i=5时,结点最多为31,因此可以得出最小高度为5。
单选题
下列数据结构中,能用二分法进行查找的是______。
- A. 顺序存储的有序线性表
- B. 线性链表
- C. 二叉链表
- D. 有序线性链表
【正确答案】
A
【答案解析】[解析] 二分法查找法的基本概念
[评析] 二分法查找只适用于顺序存储的有序表。在此所说的有序表是指线性表中的元素按值非递减排列(即从小到大,但允许相邻元素值相等)。
单选题
在下列函数中,函数值为数值的是{{U}} {{/U}}。
- A. AT(“人民”,“中华人民共和国”)
- B. CTOD(‘01/01/03’)
- C. SUBSTP(DTOC(DATE{{U}} {{/U}}),7)
- D. BOF{{U}} {{/U}}
【正确答案】
A
【答案解析】[解析] AT(“字符串1”,“字符串2”)函数是返回字符串1在字符串2的位置,是数值型;CTOD函数的作用是把符合日期格式的字符型转换成日期型;SUBSTR(c,n1,n2)函数是取字符串c第n1个字符起的n2个字符,返回值为字符型;BOF()函数的作用是判断记录指针是否处于文件头,返回值为逻辑型。
单选题
有三个关系R,S和T如下:
【正确答案】
D
【答案解析】[解析] 两个相同结构关系的并是由属于这两个关系的元组组成的集合。
单选题
在数据流图(DFD)中,带有名字的箭头表示( )。
- A.控制程序的执行顺序
- B.模块之间的调用关系
- C.数据的流向
- D.程序的组成成分