【发布时间】:2009-12-15 16:50:51
【问题描述】:
我在 SQL Server 2008 数据库中有一个 EMPLOYEE 表,该表每年都会多次存储员工 (~80,000+) 的信息。例如,不同年份的每个员工数据可能有 10 个不同的实例。
我正在通过网络应用报告这些数据,并且希望主要通过直接针对 EMPLOYEE 表的查询来报告,使用函数来获取需要计算或派生以用于报告目的的信息。
这些函数有时必须引用一个 EMPLOYEE_DETAIL 表,该表每年有 100,000 多行 - 所以现在我开始编写一些报告类型的查询,有些需要大约 5-10 秒才能运行,这有点太慢了。
我的问题是,在这种情况下,我是否应该尝试调整功能等等,所以我
始终可以直接查询数据以进行报告(实时),或者是通过过程或保存的查询在静态表中汇总我需要的数据的更好方法,并使用它任何报告?
我想报告需求的任何变化都可能反映在我使用的“总结机制”中......但我不知道该怎么做......
【问题讨论】:
-
感谢大家的回复。目前的缓慢似乎来自我拥有的一项功能,该功能总结了每位员工的价值。我将尝试在源表(我提到的 DETAIL)上为我在该函数中使用的列建立索引。
标签: sql sql-server