新闻建站cms系统、政府cms系统定制开发

广州网站建设公司-阅速公司

asp.net新闻发布系统、报纸数字报系统方案
/
http://www.ysneo.com/
广州网站建设公司
您当前位置:首页>sqlserver数据库

sqlserver数据库

缺失索引每个表只取最重要的缺失索引查找索创建索引

发布时间:2026/1/18 20:25:29  作者:Admin  阅读:11  

广告:

-- 检查缺失索引是否与现有索引冲突 WITH MissingIndexes AS ( SELECT mid.object_id, mid.equality_columns, mid.inequality_columns, mid.included_columns, migs.avg_user_impact, ROW_NUMBER() OVER (PARTITION BY mid.object_id ORDER BY migs.avg_user_impact DESC) as rn FROM sys.dm_db_missing_index_group_stats migs JOIN sys.dm_db_missing_index_groups mig ON migs.group_handle = mig.index_group_handle JOIN sys.dm_db_missing_index_details mid ON mig.index_handle = mid.index_handle ), ExistingIndexes AS ( SELECT i.object_id, i.name as index_name, i.type_desc, i.is_unique, STUFF(( SELECT ', ' + c.name FROM sys.index_columns ic JOIN sys.columns c ON ic.object_id = c.object_id AND ic.column_id = c.column_id WHERE ic.object_id = i.object_id AND ic.index_id = i.index_id AND ic.is_included_column = 0 ORDER BY ic.key_ordinal FOR XML PATH('') ), 1, 2, '') as key_columns, STUFF(( SELECT ', ' + c.name FROM sys.index_columns ic JOIN sys.columns c ON ic.object_id = c.object_id AND ic.column_id = c.column_id WHERE ic.object_id = i.object_id AND ic.index_id = i.index_id AND ic.is_included_column = 1 ORDER BY ic.index_column_id FOR XML PATH('') ), 1, 2, '') as included_columns FROM sys.indexes i WHERE i.type IN (1, 2) -- 聚集和非聚集索引 ) SELECT OBJECT_NAME(mi.object_id) as [表名], mi.equality_columns as [缺失索引-等值列], mi.inequality_columns as [缺失索引-范围列], mi.included_columns as [缺失索引-包含列], mi.avg_user_impact as [预计提升%], ei.index_name as [现有索引], ei.key_columns as [现有索引键列], ei.included_columns as [现有索引包含列], CASE WHEN ei.key_columns LIKE '%' + REPLACE(REPLACE(mi.equality_columns, '[', ''), ']', '') + '%' THEN '可能重复' WHEN mi.equality_columns LIKE '%' + REPLACE(REPLACE(ei.key_columns, '[', ''), ']', '') + '%' THEN '现有索引可能已覆盖' ELSE '需要创建' END as [建议] FROM MissingIndexes mi LEFT JOIN ExistingIndexes ei ON mi.object_id = ei.object_id WHERE mi.rn = 1 -- 每个表只取最重要的缺失索引 ORDER BY mi.avg_user_impact DESC;

这是一篇受密码保护的文章,请输入密码进行访问:

广告:

相关文章
创建索引
cms新闻系统购买咨询
扫描关注 广州阅速软件科技有限公司
扫描关注 广州阅速科技