2
A
回答
4
一個聚集索引掃描表明正在讀取聚簇索引的所有行。它通常在大型表上表現不佳,通常表明需要額外的索引或查詢調整。
1
集羣索引是SQL Server中的一個特殊索引,它是SQL Server在物理上將數據存儲在磁盤上的順序(因此,每個表只能有一個聚簇索引,因爲只能物理存儲它辦法 :) )。
因此,您的SQL正在使引擎使用此索引掃描表。
1
聚簇索引強制將基礎表記錄按索引定義的順序進行物理保存。它通常由主鍵使用。
如果你得到一個聚集索引掃描,並且您使用的是order by
條款對一些關鍵除主鍵,你最有可能錯過更好的索引...
2
最有可能它是希望通過在默認情況下是羣集的主鍵索引。不是一個表掃描,但足夠接近。
簡而言之,您缺少與您的WHERE子句相匹配的索引幷包含SELECT子句。
當你做SELECT * FROM ...
,因爲它更容易掃描比使用任何WHERE指數+鍵查找
架構+查詢將有助於PK /聚簇索引也可能發生。
相關問題
- 1. 爲什麼QO選擇聚簇索引掃描與表掃描?
- 2. 表掃描和聚簇索引掃描有什麼區別?
- 3. 爲什麼SQL索引視圖始終使用聚簇索引
- 4. 爲什麼/何時/如何選擇整個聚簇索引掃描而不是全表掃描?
- 5. 索引搜索與聚集索引掃描 - 爲什麼選擇掃描?
- 6. 爲什麼在我的聚集索引上有掃描?
- 7. 爲什麼我的查詢執行聚集索引掃描
- 8. 爲什麼主鍵應該是聚簇索引?
- 9. 爲什麼在計算表中的所有行時會出現非聚簇索引掃描?
- 10. 爲什麼選擇索引範圍掃描通過快速全索引掃描
- 11. 爲什麼SQL Server會選擇「非羣集索引掃描」?
- 12. 當主鍵無法使用時,聚簇索引的最佳選擇是什麼?
- 13. 爲什麼非聚集索引列仍然索引掃描而不是索引查找
- 14. 爲什麼這是一個索引掃描而不是一個索引查找
- 15. 什麼是掃描代碼:
- 16. 儘管有聚簇索引,SQL Server仍在使用非聚簇索引
- 17. 聚簇索引
- 18. SQL爲什麼不使用PK索引?
- 19. 爲什麼PostgreSQL對索引列執行順序掃描?
- 20. 爲什麼我的查詢計劃會生成索引掃描?
- 21. 爲什麼索引搜索變得比索引掃描更昂貴
- 22. 什麼是全文索引,何時應該使用它?
- 23. SQL Server何時選擇索引掃描?
- 24. 爲什麼這個查詢不使用postgresql中的僅索引掃描
- 25. 什麼時候使用theano的掃描功能是有利的
- 26. Java使用掃描儀時出現MisMatchException,但爲什麼?
- 27. SQL Server性能:非聚簇索引+ INCLUDE列與聚簇索引 - 等效嗎?
- 28. 如何加快160萬行上的聚簇索引掃描速度?
- 29. 非主鍵列上的聚簇索引或非聚簇索引?
- 30. 爲什麼我使用聚合函數獲得覆蓋查詢的索引掃描?