>我有一个使用视图的存储过程。存储过程接受各种参数。
我试过:
SELECT
COUNT(v.CampaignID) as RecordCount
FROM
VW_Results_ValueRank_2010_12_22_NEW V
INNER JOIN
ResultTopic ON V.ResultID = ResultTopic.ResultId
INNER JOIN
CampaignTopic on ResultTopic.topicid = CampaignTopic.topicid
WHERE
v.CampaignID = 37
AND v.CreateDate BETWEEN 'May 3 2011 8:25PM' AND 'May 3 2012 8:25PM'
AND v.SourceDate BETWEEN DATEADD(d,-3,'May 3 2011 8:25PM') AND 'May 3 2012 8:25PM'
AND (LEFT(Title, 80) LIKE '%google%' OR Domain LIKE '%google%' OR LEFT([Text], 300) LIKE '%google%')
它返回 2016 年的记录,但需要 40-50 秒,我可以将此时间减少到 5-10 秒吗。 请帮忙。
您可以通过查看执行计划并创建它们来检查丢失的索引。
如果所有 indexex 都在那里并且无法在表上创建索引,则可以在 where 子句中为 CreateDate 、SourceDate 和其他列创建索引视图。
参考此链接