【发布时间】:2014-11-16 22:11:07
【问题描述】:
我不熟悉必须管理我们的 sqlserver 数据库。已收到此请求。
我有一个包含一百万条记录的大表。想要运行此报告。使用 SQL Server 2008 需要一个多小时。
rowid 是 PK 并且在 dx 和 varcharfield 上有一个索引。
SELECT T1.VarcharField,
T1.DX,
T1.ROWID,
(SELECT Sum(t2.QC) AS Total
FROM tbl t2
WHERE T2.VarcharField = T1.VarcharField
AND t2.dx <= t1.dx) AS Total
FROM tbl AS T1
【问题讨论】:
-
这种计算运行总数的方法不能扩展到 100 万行。
标签: sql-server sql-server-2008 cumulative-sum