1 / 5
文档名称:

数据应用程序题.doc

格式:doc   大小:89KB   页数:5页
下载后只包含 1 个 DOC 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

文档介绍:数据应用程序题.doc四、编写程序
假设数据库factory中有3个表,各表逻辑结构设计如下:
部门表depart,其结构为:部门号(整数),部门名(定长字符串,10)。主键:部门号。
职工表worker,其结构为:职工号(整数),姓名:(定长字符串,8),性别:(定长字 符串,2,默认值"男"),出生日期(日期型),党员否(逻辑型),参加工作(日期型), 部门号(整数)。主键:职工号;外键:部门号。
职工工资表salary,其结构为:职工号(整数),日期(日期型),工资(数字型,(6, 1), 取值〈=15000)。主键:职工号+日期;外键:职工号。
请用SQL语句完成如下操作:
1) 显示所有职工的年龄。
答案:SELECT职工号,姓名,YEAR(GETDATEO)-YEAR(出生日期)AS '年龄’
FROM worker
2) 显示所有平均工资高于1200的部门名和对应的平均工资。
答案:SELECT 部门名,AVG (工资)FROM depart, worker, salary WHERE Depart,部门号^worker,部门号AND worker.职工号=salary,职工号 GROUP BY 部门号 HAVING AVG (工资)>1200
3) 建立视图viewl,查询所有职工的职工号、姓名和平均工资。
答:CREATE VIEW viewl (职工号,姓名,平均工资)AS
SELECT worker.职工号,姓名,AVG(工资)FROM worker, salary
WHERE worker,职工号=salary,职工号 GROUP BY worker,职工号,姓名
4) 显示所有职工的年龄。
答:SELECT 姓名,YEAR(GETDATEO)-YEAR(出生日期)As ,年龄'
FROM worker
5) 求出各部门的党员人数。
答:SELECT depart.部门名,COUNT (*) AS '党员人数'
FROM depart, worker
WHERE depart.部门号=可orker.部门号 AND 党员否=1
GROUP BY depart.部门名
6) 显示所有职工的职工号、姓名、部门名和2004年2月份工资,并按部门名顺序排列。
答:SELECT worker.职工号,worker.姓名,depart.部门名,salary. I资 As ' 2004年2月工资,
FROM worker, depart, salary
WHERE worker.部门号=depart.部门号 AND worker.职工号^salary.职工 号 AND YEAR (salary.日期)=2004 AND MONTH (salary.日期)=2
ORDER BY worker.部门号
7) 显示各部门名和该部门的所有职工平均工资。

答:SELECT depart.部门名,AVG(salary.工资) As ,平均工资'
FROM worker, depart, salary
WHERE worker.部门号=depart.部门号 AND worker.职工号=salary.职工号
GROUP BY depart.部门名
显示所有职工的职工号、姓名和部门类型,其

分享好友

预览全文

数据应用程序题.doc

上传人:小雄 2021/12/5 文件大小:89 KB

下载得到文件列表

数据应用程序题.doc

相关文档