- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
SQL编程练习题剖析
练习题
1、分别创建存储过程和函数实现两个数相除并且显示结果如果第二个 数是0则显示消息“not to DIVIDE BY ZERO”不为0则显示结果。
2、分别编写存储过程和函数计算1到100的累加和。
3、分别创建存储过程和函数显示EMP表中工资最高及工资最低的员工的 姓名、编号并在之后标出“工资最高”或“工资最低”字样。
4、创建一个函数Emp_Avg根据员工号返回员工所在部门的平均工资。
5、创建表jobday表结构如下DayID nvarchar (50) 主键日期格式yyyyMMddWeek nvarchar (1) NOT NULL 星期几中文表示IsJobDay int NOT NULL 是否是周六或周日0表示不是1表示是编写存储过程实现根据参数值传入的年份向jobday表中写入该年对应 的每一天的日期及各日期所对应的是星期几并在isjobday列中使用0 或1进行标识。
6、编写存储过程根据参数值传入的年份统计该年份以后被 雇佣的各项工作每年的雇佣人数。显示效果如下
job_id 1995 1996 1997 1998 1999 2000
---------- ----------- ----------- ----------- ----------- ----------- -----------
AC_ACCOUNT 0 0 0 0 0 0
AC_MGR 0 0 0 0 0 0
AD_ASST 0 0 0 0 0 0
AD_PRES 0 0 0 0 0 0
AD_VP 0 0 0 0 0 0
FI_ACCOUNT 0 0 2 1 1
0FI_MGR 0 0 0 0 0 0
HR_REP 0 0 0 0 0 0
IT_PROG 0 0 1 1 1 0
MK_MAN 0 1 0 0 0 0
MK_REP 0 0 1 0 0 0.
。。。。。。
程序设计题
假设在factory数据库中已创建了如下3个表,
(1)职工表worker,其结构为:
职工号:int,姓名:char(8),性别:char(2),出生日期:datetime,党员否:bit,参加工作:datetime,部门号:int。
(2)部门表depart,其结构为:
部门号:int,部门名:char(10)。
(3)职工工资表salary,其结构为:
职工号:int,姓名:char(8),日期:datetime,工资:decimal(6,1)。
1.使用Transact-SQL语句完成如下各题:
(1).显示所有职工的年龄。
(2).求出各部门的党员人数。
(3).显示所有职工的姓名和2004年1月份工资数。
(4).显示所有职工的职工号、姓名和平均工资。
(5).显示所有职工的职工号、姓名、部门名和2004年2月份工资,并按部门名顺序排列。
(6).显示各部门名和该部门的所有职工平均工资。
(7).显示所有平均工资高于1200的部门名和对应的平均工资。
(8).显示所有职工的职工号、姓名和部门类型,其中财务处和人事处属管理部门,市场部属市场部门。
答案:
(1).SELECT 姓名,YEAR(GETDATE())-YEAR(出生日期) AS ‘年龄’ FROM worker
(2).SELECT depart.部门名,count(*) AS ‘党员人数’
FROM worker,depart
WHERE worker.党员否=1 AND worker.部门号=depart.部门号
GROUP BY depart.部门名
(3).SELECT worker.姓名,salary.工资
FROM worker,salary
WHERE worker.职工号= salary.职工号 AND YEAR(salary.日期)=2004 AND MONTH(salary.日期)=1
(4). SELECT 职工号,,AVG(工资) AS ‘平均工资’
FROM salary
GROUP BY 职工号
(5). SELECT worker.职工号,worker.姓名, depart.部门名, salary.工资 AS ‘2004年2月工资’
FROM worker,depart,salary
WHERE worker.部门号=depart.部门号 AND worker.职工号= salary.职工号 AND YEAR(salary.日期)=2004 AND MONTH(salar
您可能关注的文档
最近下载
- 湖南省长沙市2025届高三新高考适应性考试语文试题及答案解析.pdf VIP
- 正方体的11种展开图--A4直接打印版.docx VIP
- 《商品学》(第2版)1-11章题库章节练习题答案全书测试题参考答案含原题.pdf VIP
- 23ZG210预应力高强混凝土空心方桩.pdf
- 心理咨询师考试发展心理学知识习题.docx VIP
- 02S515排水检查井图集 .docx VIP
- (高清版)DG∕TJ 08-2165-2015 建设项目交通影响评价技术标准.docx VIP
- 3.3.5患者参与医疗安全(达B档).doc VIP
- 道口开设施工合同5篇.docx VIP
- 九一八国旗下演讲稿《勿忘国耻吾辈自强》.docx VIP
文档评论(0)