如何从sql执行计划中提高查询性能

时间:2014-08-22 11:05:42

标签: sql sql-server-2012-express sql-execution-plan

我有一个名为Product_Category_Mapping的表,行数为16806030。我在此表的ProductIdCategoryId列中添加了非聚集索引。

  1. Product表中的记录数:16899429
  2. Category表中的记录数:413
  3. 当我查看数据库的执行计划时,它使用索引搜索,成本为83%。

    以下是查询:

    (SELECT 
         pcm.Id, pcm.CategoryId, c.Name AS 'CategoryName', 
         pcm.DisplayOrder AS 'CategoryDisplayOrder' 
     FROM 
         Product_Category_Mapping AS pcm 
     JOIN 
         Category AS c ON pcm.CategoryId = c.Id 
     WHERE 
         pcm.ProductId = @ProductId 
     FOR XML RAW, ROOT('Category')) AS 'Category'
    

    对于执行计划,我执行了以下查询:http://gallery.technet.microsoft.com/scriptcenter/Find-inefficient-query-88f4611f

    有人可以建议如何改进吗?

    提前致谢

0 个答案:

没有答案