我的数据由许多工人(例如 a file2006
,file2007
)的年表组成,包括。雇主 ID 和公司 ID。我还通过一些计算(如下)对集团公司进行了查看,这些计算groups
似乎完成得很好,所以没有显示出来。但是,我想我有查询通过使用下面的代码通过这些分组来计算每家公司从 2006 年到 2007 年的总工资账单的变化。与先前视图的快速计算不同,这会使系统长时间停滞,并最终因一些有关映射问题的错误消息而中断。那么这样做的正确方法是什么?
CREATE VIEW sys.change2007 (firmid,groups,wagebillchange) AS (
SELECT file2006.firmid,MAX(groups.groups), (
SELECT SUM(file2007.wage)/SUM(file2006.wage) FROM file2006, file2007
WHERE file2006.firmid = file2007.firmid
)
FROM file2006, file2007, groups
WHERE file2006.firmid = file2007.firmid AND file2006.peorglopnr = groups.firmid
GROUP BY file2006.firmid
);