
biao1跟biao2必须同时插入数据,不然后面计算‘生产人员五日平均数’时会出现错误,因为没经过现场测试,下面的代码仅供参考,基本思路是这样的;当然了,如果楼主的biao1中不会有新数据,仅想在原有数据进行统计,也可参考过程中update部分的语句
create trigger t_insert
on biao1
for insert
as
begin
insert into Fenxi1
select 货物代码,日期,0,0,0 from inserted
if @@error<>0
begin
raiserror 33334 '插入失败!'
rollback
return
end
update Fenxi1 set 五日平均生产量=(select avg(日生产量) from biao1 where datediff(day,日期,getdate())=4) where 货物代码=(select 货物代码 from inserted) and 统计日期=(select 日期 from inserted)
update Fenxi1 set 十日平均生产量=(select avg(日生产量) from biao1 where datediff(day,日期,getdate())=9) where 货物代码=(select 货物代码 from inserted) and 统计日期=(select 日期 from inserted)
update Fenxi1 set 生产人员五日平均数=(select avg(生产人员数) from biao2 where datediff(day,日期,getdate())=4) where 货物代码=(select 货物代码 from inserted) and 统计日期=(select 日期 from inserted)
if @@error<>0
begin
raiserror 33334 '更新失败!'
rollback
return
end
end
go
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)