某企业信息系统的部分关系模式及属性说明如下:
(1)员工关系模式:员工(员工编号,姓名,部门,工资,职务,教育水平),其中员工编号是主键,部门是外键,参照部门关系模式的部门编号属性。
(2)部门关系模式:部门(部门编号,部门名称,经理),其中部门编号是主键,经理是外键,参照员工关系模式的员工编号属性。
(3)项目关系模式:项目(项目编号,项目名称,所属部门,负责人),其中项目编号是主键,所属部门和负责人是外键,分别参照部门关系模式和员工关系模式的部门编号和员工编号属性。
(4)员工项目关系模式:员工项目(员工编号,项目编号),其中员工编号和项目编号是主键,同时员工编号和项目编号也是外键,分别参照员工关系模式的员工编号和项目关系模式的项目编号。
【问题1】(2分)
假设定义员工关系模式时,没有定义主键和外键。请用SQL语句补充定义员工关系模式的实体完整性约束和参照完整性约束。
(a) ;
(b) ;
【问题2】(13分)
请将下列SQL查询语句补充完整。
(1)查询平均工资(不包含职务为经理的员工)超过3000的部门的编号,部门名称及其平均工资,并按平均工资从高到低排序。
SELECT部门编号,部门名称,(c) AS平均工资
FROM员工,部门
WHERE (d)
GROUP BY (e)
HAVING (f)
(g);
(2)查询工资大于全体员工平均工资的员工编号,姓名和工资。
SELECT员工编号,姓名,工资
FROM员工
WHERE (h);
(3)查询没有承担任何项目的部门编号和部门名称。
SELECT部门编号,部门名称
FROM部门
WHERE (i) (SELECT.FROM项目WHERE (i) );
(4)查询研发部所有员工的员工编号和教育水平,若教育水平大于20,则输出研究生;若教育水平小于等于20,并大于16,则输出本科生;否则输出其他。
SELECT员工编号,
CASE
WHEN教育水平>20 THEN‘研究生’
(k)
(l)
END
FROM员工,部门
WHERE (m) ;
(5)查询部门名称不以“处”结尾的部门编号和部门名称。
SELECT部门编号,部门名称
FROM部门
WHERE部门名称 (n) ;
正确答案及解析
正确答案
解析
【问题1】(2分)
(a) ALTER TABLE员工ADD CONSTRAINT PK员工 PRIMARY KEY(员工编号) (其中PK_员工可以为任何有效的命名)
(b)ALTER TABLE员工ADD CONSTRAINT FK员工 FOREIGN KEY(部门) REFERENCES部门(部门编号)(其中FK员工可以为任何有效的命名)
【问题2】(13分)
(1)(c)AVG(工资)
(d)员工,部门=部门.部门编号AND职务<>’经理’
(e)部门编号,部门名称
(f) AVG(工资)>3000
(g) ORDER BY3 DESC或ORDER BY平均工资DESC
(2)(h)工资> (SELECT AVG(工资)FROM员工)(2分)
(3)(i) NOTEXISTS
(j)部门编号=所属部门
(4) (k) WHEN教育水平<=20 AND教育水平>16 THEN’本科生’
(l) ELSE’其他’
(m)员工.部门=部门.部门编号AND部门名称=’研发部’
(5)(m)NOT LIKE ’%处’
包含此试题的试卷
你可能感兴趣的试题
一台主机的IP地址为202.123.25.36,掩码为255.255.254.0。如果该主机需要在该网络进行直接广播,那么它应该使用的目的地址为( )
-
- A.202.123.25.0
- B.202.123.25.255
- C.202.123.24.0
- D.202.123.24.255
- 查看答案
在计算机系统的日常维护工作中,应当注意硬盘工作时不能__(2)__。另外,需要防范病毒,而__(3)__是不会被病毒感觉的。
-
- A.电子邮件
- B.硬盘
- C.U盘
- D.ROM
- 查看答案
有 4 个 IP 地址:201.117.15.254、201.117.17.01、201.117.24.5 和 201.117.29.3,如果子网掩码为 255.255.248.0,则这 4 个地址分别属于3个子网;其中属于同一个子网的是()
-
- A.201.117.15.254 和 201.117.17.01
- B.201.117.17.01 和 201.117.24.5
- C.201.117.15.254 和 201.117.29.3
- D.201.117.24.5 和 201.117.29.3
- 查看答案
在异步通信中,每个字符包含1位起始位、7位数据位、1位奇偶位和1位终止位,每秒钟传送200个字符,采用4相位调制,则码元速率为()。
-
- A.50波特
- B.500波特
- C.550波特
- D.1000波特
- 查看答案
在 Windows 中,运行( )命令得到下图所示结果。以下关于该结果的叙述中,错误的是( )。
Pinging 59.74.111.8 with 32 bytes of data:
Reply from 59.74.111.8: bytes=32 time=3ms TTL=60
Reply from 59.74.111.8: bytes=32 time=5ms TTL=60
Reply from 59.74.111.8: bytes=32 time=3ms TTL=60
Reply from 59.74.111.8: bytes=32 time=5ms TTL=60
Ping statistics for 59.74.111.8:
Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),
Approximate round trip times in milli-seconds:
Minimum = 3ms, Maximum = 5ms, Average = 4ms
-
- A.该命令使得本地主机向目标主机发送了 4 个数据包
- B.本地主机成功收到了目标主机返回的 4 个数据包
- C.本地主机与目标主机连接正常
- D.该命令用于查看目标主机的 IP 地址
- 查看答案