Một số tình huống (trong SQL Server) trong đó quét toàn bộ bảng tốt hơn quét chỉ mục là gì?
Một số tình huống (trong SQL Server) trong đó quét toàn bộ bảng tốt hơn quét chỉ mục là gì?
Câu trả lời:
Khi độ chọn lọc của các bản ghi rất cao, quét toàn bộ bảng luôn tốt hơn so với quét qua chỉ mục.
http://www.techipost.com/single-index-versus-full-table-scan/
Chỉnh sửa bởi gbn:
Ví dụ, trình tối ưu hóa có thể quyết định rằng việc quét chỉ mục bảng / cụm được dễ dàng hơn nếu nó yêu cầu nhiều tra cứu chính (ví dụ: chỉ mục không được phân cụm thành các chỉ mục được phân cụm cho dữ liệu không khóa).
Hoặc bạn không có nhiều giá trị riêng biệt trong các cột được lập chỉ mục
Khi mà
Trường hợp thứ 2 cần đủ điều kiện
Cuối cùng
Tốt hơn theo cách nào?
Trình tối ưu hóa có thể chọn quét bảng nếu chỉ mục không che, vì quét chỉ mục vẫn phải được tăng cường bằng tra cứu dấu trang.
Trong những trường hợp đó, một bảng được lập chỉ mục kém không tốt hơn một bảng không được lập bảng.
http://www.sqlservercentral.com/articles/Performance+Tuning/bookmarklookups/1899/