sql-server – 为什么索引REBUILD不会减少索引碎片化?

我使用ALTER INDEX REBUILD来删除索引碎片.在某些情况下,REBUILD似乎没有消除这种碎片. REBUILD不删除碎片的原因是什么?似乎这种情况尤其发生在小指数上.

解决方法

如果索引非常小(我相信少于8页),它将使用混合范围.因此,它看起来好像仍然存在碎片,因为住房范围将包含来自多个索引的页面.

因此,以及在如此小的索引中碎片通常可以忽略的事实,你真的应该只重建具有特定页面阈值的索引.最佳实践是重建至少1000页的碎片索引.

相关文章

SELECT a.*,b.dp_name,c.pa_name,fm_name=(CASE WHEN a.fm_n...
if not exists(select name from syscolumns where name=&am...
select a.*,pano=a.pa_no,b.pa_name,f.dp_name,e.fw_state_n...
要在 SQL Server 2019 中设置定时自动重启,可以使用 Window...
您收到的错误消息表明数据库 'EastRiver' 的...
首先我需要查询出需要使用SQL Server Profiler跟踪的数据库标...