【发布时间】:2016-05-24 09:53:54
【问题描述】:
我在 ASP.NET Webforms 中有一个系统设置,并且在某些特定情况下我需要获取所有接近 100 万条记录的记录生成表单。
一种解决方案可能是减少要获取的记录数量,但是当我们需要获取超过 5 年的记录时,时间记录是 50 万、100 万等等。我怎样才能减少它的时间?
我可以使用哪些积分来减少时间?我不能在这里显示完整的查询,这是一个大视图,其中调用了一些其他视图
如果我将其设计为 Linq 查询,是否需要更少的时间?这就是我问 Linq vs Views 的原因
我已经执行了一个“Select * from TableName”查询,它的 40 分钟和它仍在执行的表有 1,17,000 条记录我们可以缩短这个时间线
【问题讨论】:
-
您有一个显示 100 万条记录的表单!?你必须有一个非常小的卷轴......谁需要一百万条记录?为什么不实现分页,只显示 25-50-100 组?开始认为这是一个用户体验问题。 Linq 将被评估为 sql。您应该评估您不想运行的查询并且查询 linq 正在生成。您可以专注于调整您的 sql 查询。你能提供执行计划吗?
-
请以
sqlplan格式提供您的查询和执行计划 -
@mxix 实际上我正在使用该查询生成报告 没有在 webform 的任何地方显示它。你想让我和你分享完整的查询吗
-
@Devart 实际上我正在使用该查询生成报告 没有在 webform 的任何地方显示它。你想让我和你分享完整的查询吗
-
这是非常主观的,因为您没有提供有关您的查询的任何信息。
标签: sql .net sql-server linq views