月报表如何自动汇总

月报表如何自动汇总,第1张

月报表可以通过利用数据库软件,如Microsoft Access或Excel进行自动汇总。可以使用编程语言,如SQL,来定义查询,以自动从数据库中检索需要的数据,并自动生成汇总表格。此外,还可以使用报表生成器,如Crystal Reports或Microsoft Reporting Services,根据预定义的报表格式,自动生成汇总报表。

--因为楼主想要求当biao1 、biao2 两表有新数据加入时,fenxi1表中的数据也自动增加,所以个人觉得在表biao1上建立一个触发器比较好,发现有insert动作,即在fenxi1表插入新数据并处理,注意点:

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


欢迎分享,转载请注明来源:内存溢出

原文地址:https://www.54852.com/sjk/9989134.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-04
下一篇2023-05-04

发表评论

登录后才能评论

评论列表(0条)

    保存