【发布时间】:2018-01-03 08:26:12
【问题描述】:
我有一个包含 900 多列和数亿行的 SQL Server 表。我构建了一个存储过程,它抓取这些行的一小部分(通常一次少于 500k 行)并查看每一列以确定获取每个值的计数以及该值在该列中出现的百分比。为此,我首先缩小数据范围并插入临时表。然后我在临时表上运行分析。
最近,我们需要一次对更大的数据组(50 到 1 亿行数据)进行这种分析。不幸的是,当我尝试运行它时,它似乎永远运行。我怀疑将这么多数据插入临时表是问题的一部分,但是对每一列中的所有值进行分组也需要很长时间。
有没有更简单/更有效的方法来做到这一点?使用 SQL Server 2012。
【问题讨论】:
-
我认为执行计划在这里真的很有帮助。
标签: sql sql-server large-data