网上Unused Index Script 脚本的问题
曾经使用过网上下载的脚本查询没有使用过的Index比方SQL
SERVER – 2008 – Unused Index Script – Download,事实上如今看起来这个脚本是有一些问题。
脚本例如以下:
-- UnusedIndex Script
-- Original Author:Pinal Dave (C) 2011
SELECT TOP 25
o.name
AS ObjectName
, i.nameAS IndexName
, i.index_idAS IndexID
, dm_ius.user_seeksAS UserSeek
, dm_ius.user_scansAS UserScans
, dm_ius.user_lookupsAS UserLookups
, dm_ius.user_updatesAS UserUpdates
, p.TableRows
, 'DROP INDEX '+
QUOTENAME(i.name)
+ ' ON '+
QUOTENAME(s.name)+
'.' +
QUOTENAME(OBJECT_NAME(dm_ius.OBJECT_ID))AS
'drop statement'
FROM sys.dm_db_index_usage_statsdm_ius
INNER JOINsys.indexes iON i.index_id
= dm_ius.index_id
AND dm_ius.OBJECT_ID= i.OBJECT_ID
INNER JOINsys.objects oON dm_ius.OBJECT_ID=
o.OBJECT_ID
INNER JOINsys.schemas sON o.schema_id=
s.schema_id
INNER JOIN(SELECTSUM(p.rows)
TableRows, p.index_id, p.OBJECT_ID
FROM sys.partitions pGROUP
BY p.index_id, p.OBJECT_ID) p
ON p.index_id= dm_ius.index_idAND dm_ius.OBJECT_ID=
p.OBJECT_ID
WHERE
OBJECTPROPERTY(dm_ius.OBJECT_ID,'IsUserTable')=
1
AND dm_ius.database_id=
DB_ID()
AND i.type_desc=
'nonclustered'
AND i.is_primary_key= 0
AND i.is_unique_constraint= 0
ORDER BY(dm_ius.user_seeks+ dm_ius.user_scans+
dm_ius.user_lookups)ASC
GO
本脚本通过查询sys.dm_db_index_usage_stats获得索引的使用情况。可是假设索引没有被使用是不会出如今sys.dm_db_index_usage_stats中的。
仅仅有索引被第一次被使用才会在sys.dm_db_index_usage_stats中插入一条记录,之后索引被訪问的信息会累积更新到这张表里。假设使用INNSER
JOIN连接就忽略掉了这部分的数据。
当然索引被创建一次都没有使用的情况会很少。
网上Unused Index Script 脚本的问题的更多相关文章
- 在html中添加script脚本的方法和注意事项
在html中添加script脚本有两种方法,直接将javascript代码添加到html中与添加外部js文件,这两种方法都比较常用,大家可以根据自己需要自由选择 在html中添加<script& ...
- C#用正则表达式去掉Html中的script脚本和html标签
原文 C#用正则表达式去掉Html中的script脚本和html标签 /// <summary> /// 用正则表达式去掉Html中的script脚本和html标签 ...
- 使用PrintWriter out=response.getWriter();输出script脚本时乱码解决
使用PrintWriter out=response.getWriter();输出script脚本时乱码解决 最近遇到了一个奇怪的事情,仅仅用out.print("<script ty ...
- 使用lucene query的CharFilter 去掉字符中的script脚本和html标签
1.准备数据,这里我从数据库读取一个带有html标签和script脚本的数据
- 015-elasticsearch5.4.3【五】-搜索API【四】Joining 多文档查询、GEO查询、moreLikeThisQuery、script脚本查询、span跨度查询
一.Joining 多文档查询 joining query 像Elasticsearch这样的分布式系统中执行完整的SQL样式连接非常昂贵.相反,Elasticsearch提供两种形式的连接,旨在水平 ...
- node Cheerio 获取script脚本里的数据
const cheerio = require('cheerio'); const $ = cheerio.load(html); // your html//如果有多少script脚本标签使用循环来 ...
- 使用jQuery加载script脚本
原文链接: Loading Scripts with jQuery JavaScript loaders加载器简单强大而又非常有用.我在博客上介绍过其中一些,例如 curljs 和 LABjs ,也 ...
- Redis 的Lua Script脚本功能
从 Redis 2.6.0 版本开始,通过内置的 Lua 解释器,可以使用 EVAL 命令对 Lua 脚本进行求值 Redis2.6内置的Lua Script支持,可以在Redis的Server端一次 ...
- (五)CodeMirror - 关于htmlmixed中包含script脚本
最近发现个问题,场景如下: 当创建的mode类型为htmlmixed,且内容中包含javascript脚本,且是闭包立即执行: 如果内容是使用JQuery函数.html()插入到DOM中后再创建cod ...
随机推荐
- Python 源码分析:queue 队列模块
起步 queue 模块提供适用于多线程编程的先进先出(FIFO)数据结构.因为它是线程安全的,所以多个线程很轻松地使用同一个实例. 源码分析 先从初始化的函数来看: 从这初始化函数能得到哪些信息呢?首 ...
- 第3节 hive高级用法:15、hive的数据存储格式介绍
hive当中的数据存储格式: 行式存储:textFile sequenceFile 都是行式存储 列式存储:orc parquet 可以使我们的数据压缩的更小,压缩的更快 数据查询的时候尽量不要用se ...
- python使用zipfile解压文件中文乱码问题
中文在编程中真实后娘养的,各种坑爹,python3下中文乱码这个问题抓破了头皮,头疼.看了alex的文章,才有种恍然大悟的感觉(链接在底部). 一句话,就是转换成unicode,压缩前是什么编码,使用 ...
- MATLAB优化——减少for的使用
Table of Contents 1. MATLAB 2. 矩阵计算--全0行整体替换 MATLAB MATLAB作为一个强大的工具(可惜是收费的),在矩阵运算.绘制函数和数据.实现算法.创建用户界 ...
- CentOS7-wget命令
Wget主要用于下载文件,在安装软件时会经常用到,以下对wget做简单说明.转载自:https://www.cnblogs.com/lxz88/p/6278268.html 1.下载单个文件:wget ...
- 使用ajax出现canceled情况
在使用ajax的时候要注意,在只定义了一个ajax请求对象的全局变量时,如果同打开发送了一个请求,但在请求还未结束时,又利用这一个全局变量发送另外一个ajax请求,就会出现某一个请求的状态码为canc ...
- linux命令 dig-域名查询工具
博主推荐:更多网络测试相关命令关注 网络测试 收藏linux命令大全 dig命令是常用的域名查询工具,可以用来测试域名系统工作是否正常. 语法 dig(选项)(参数) 选项 @<服务器地址&g ...
- JAVA加载Properties配置资源文件
JAVA加载Properties配置资源文件 制作人:全心全意 配置文件(资源文件):以properties作为拓展名的文件 Java代码是如何加载properties文件的? 必须使用Propert ...
- PHP:GD库 图片水印处理
文章来源:http://www.cnblogs.com/hello-tl/p/7592974.html <?php /** * 处理图片类 * 1.添加文字水印 * 2.添加图片水印 * 3.压 ...
- Matlab学习笔记(二)
二.MATLAB基础知识 (二)数值.变量和表达式 命名规则: 变量名对大小写敏感,即区分大小写 变量名必须以字母开头,后面可以采用数字.下划线和字母,但不能使用空格.标点符号和运算符 变量名最长可以 ...