一个聚集索引已经在两个dw_assesment_details
和dw_assesment_details_id
表为什么这是一个索引扫描而不是一个索引查找
/* 6 minutes */
CREATE CLUSTERED INDEX [Ix_DW_ASSESSMENT_DETAILS_qid_QNO_TmpverName]
ON [dbo].[DW_ASSESSMENT_DETAILS_QUESTION_ID]
(
[TEMPLATENAME] ASC,
[TEMPLATEVERSION] ASC,
[QUESTION_NO] ASC
)
WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, SORT_IN_TEMPDB = OFF,
DROP_EXISTING = OFF, ONLINE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON)
GO
/* 9 minutes */
CREATE CLUSTERED INDEX [Ix_DW_ASSESSMENT_DETAILS_QNO_TmpverName]
ON [dbo].[DW_ASSESSMENT_DETAILS]
(
[TEMPLATENAME] ASC,
[TEMPLATEVERSION] ASC,
[QUESTION_NO] ASC
)
WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, SORT_IN_TEMPDB = OFF,
DROP_EXISTING = OFF, ONLINE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON)
SELECT
[GETQUESTIONID],
dw.[TEMPLATENAME], dw.[TEMPLATEVERSION],
dw.[QUESTION_NO]
FROM
[QIS_DW].[dbo].[DW_ASSESSMENT_DETAILS] dw
INNER JOIN
[QIS_DW].[dbo].[DW_ASSESSMENT_DETAILS_QUESTION_ID] id ON dw.TEMPLATENAME = id.TEMPLATENAME
AND dw.TEMPLATEVERSION = id.TEMPLATEVERSION
AND dw.QUESTION_NO = id.QUESTION_NO
但上面的选择查询使用索引扫描生成 - 没有索引查找。如何使用索引查找呢?
任何性能调整专家的建议?
您正在读取所有数据,并且这两个表具有以相同顺序显示数据的索引。你**不要**索引寻求 – Caleth
你可能想阅读[RBarry Young对此问题的回答](https://stackoverflow.com/questions/6528906/why-is-this-an-index-scan - 和 - 不一个索引,搜索) –