美好的一天,我有一个利用嵌套选择从多个表中收集数据的查询...是否有更好的方法来重写此查询以加快其进程?最耗时的部分是批量插入......希望你能帮忙......
答案 0 :(得分:1)
这就是我要做的事情,假设您的表已按照您的说法编制索引:我会删除选择不同的语句并将其粘贴到单独的SP中,显然数据将位于索引的临时表中。然后我将在主proc中调用此SP,然后将此临时表与主insert语句连接。这将允许优化器知道临时表中数据的分布并进行一些优化。如果不清楚,请告诉我。我一直都在使用这种技术。它还使维护和读取代码更容易。
答案 1 :(得分:0)
好的,鉴于赠品,我认为一个好的选择是使用索引视图。这允许您在插入时完成连接和计算,并将严重降低实际插入SP的复杂性。
请参阅http://technet.microsoft.com/en-us/library/dd171921(v=sql.100).aspx