我有一个关于在表 TheTable 上执行 SQL Server 查询的最快方法的问题,该表具有以下字段:TimeStamp、Col1、Col2、Col3、Col4
我不维护数据库,我只是可以访问它。我需要执行 10 次类似于以下的计算:
Col2*Col3 + 5
5*POWER(Col3,7) + 4*POWER(Col2,6) + 3*POWER(Col1,5)
然后我必须使用选定日期的数据(到目前为止数据库中有 8 个月的数据)找到计算结果的 AVG 和 MAX。由于每 0.1 秒对数据进行一次采样,因此每次计算有 864000 行。我想确保查询尽快运行。有没有比这更好的方法:
SELECT AVG(Col2*Col3 + 5),
AVG(5*POWER(Col3,7) + 4*POWER(Col2,6) + 3*POWER(Col1,5)),
MAX(Col2*Col3 + 5),
MAX(5*POWER(Col3,7) + 4*POWER(Col2,6) + 3*POWER(Col1,5))
FROM TheTable
WHERE TimeStamp >= '2010-08-31 00:00:00:000'
AND TimeStamp < '2010-09-01 00:00:00:000'
谢谢!