一.清理普通索引占用的空间 问:对表中存在的k列(非主键)的普通索引执行以下重建操作,有什么影响? alter table T drop index k; alter table T add index(k); 答:索引可能因为删除,或者页分裂等原因,导致数据页有空洞,重建索引的过程会创建一个新的索引,把数据按顺序插入,这样页面的利用率最高,也就是索引更紧凑.更省空间.重建索引k的做法是合理的,可以达到省空间的目的.…
分析索引空间使用情况.以及索引是否须要重建 分析其它用户下的索引须要 analyze any的权限 分析索引前先查看表的大小和索引的大小,假设索引大小和表大小一样大或者大于表的大小,那么能够推断索引可能有问题.须要分析索引 查询对象大小: select owner,segment_name,segment_type,bytes/1024/1024 from dba_segments order by 4 desc 1.分析索引 SQL> analyze index AA.INDEX_AA va…
SQL Server 版本是 2008 R2. 查询数据库索引碎片情况的 SQL 语句(来源): SELECT OBJECT_NAME(ind.OBJECT_ID) AS TableName, ind.name AS IndexName, indexstats.index_type_desc AS IndexType, indexstats.avg_fragmentation_in_percent FROM sys.dm_db_index_physical_stats(DB_ID(), NULL…
-- 查看出现频率select count(*) as cnt,cityfrom sakila.city_demo group by city order by cnt desc limit 10; 1.select count(distinct city)/count(*) from sakila.city_demo; *完整列的选择性 2. select count(distinct left(city,3))/count(*) as sel3 ,count(distinct left(ci…