单选题 ~(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. 不能编辑修改
【正确答案】 D
【答案解析】
单选题 如果根的层次为1,则具有30个结点二叉树的最小高度为______。
  • A.4
  • B.5
  • C.6
  • D.7
【正确答案】 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.程序的组成成分
【正确答案】 C
【答案解析】