Sql 存储过程加游标结合的使用
【摘要】 创建一个存储过程使用游标 如果该职工入职时间超过3年 并且学历 在本科以上 则对该职工工资加10%如果 学历没达到本科的 入职时间在10年以上 同样对该职工工资追加8% 其他的一律不加
CREATE proc jiagongziasdeclare @name nvarchar(20)declare @xueli nva...
创建一个存储过程使用游标 如果该职工入职时间超过3年 并且学历 在本科以上 则对该职工工资加10%如果 学历没达到本科的 入职时间在10年以上 同样对该职工工资追加8% 其他的一律不加
-
CREATE proc jiagongzi
-
as
-
declare @name nvarchar(20)
-
declare @xueli nvarchar(20)
-
declare @time datetime
-
declare @gongzi intdeclare zengjia cursor scroll
-
for
-
select * from 职员表
-
open zengjia
-
fetch next from zengjia into @name,@xueli,@time,@gongzi
-
while @@FETCH_STATUS=0
-
begin
-
if (@xueli='本科' or @xueli='硕士') and DATEDIFF(year, @time, getdate())>=3
-
begin
-
update 职员表 set 工资=@gongzi+@gongzi*0.1 where 姓名=@name
-
end
-
if (@xueli<>'本科' and @xueli<>'硕士') and DATEDIFF(year, @time, getdate())>=10
-
begin
-
update 职员表 set 工资=@gongzi+@gongzi*0.08 where 姓名=@name
-
end
-
fetch next from zengjia into @name,@xueli,@time,@gongzi
-
end
-
close zengjia
-
deallocate zengjia goexec jiagongzi
文章来源: chenyu.blog.csdn.net,作者:chen.yu,版权归原作者所有,如需转载,请联系作者。
原文链接:chenyu.blog.csdn.net/article/details/49183691
【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)