查询SQL Server Index上次Rebuild时间的方法

   2015-08-18 0
核心提示:这篇文章主要介绍了查询SQL Server Index上次Rebuild时间的方法,本文直接给出实现脚本代码,需要的朋友可以参考下

朋友有一个Rebuild Index的Job执行一般停掉了,问我是否可以查看哪些Index已经被Rebuild过了。本来以为Sys.index或者Sys.objects会存储类似的信息,结果没有找到。
 
从网上查了一下,SQL Server没有存储类似的信息。但是因为Rebuild Index会自动更新统计信息,而统计信息的更新时间是可以获得的。所以我们可以大致根据统计信息的时间来估计。
因为统计信息的更新也有可能是达到更新的阀值所做的更新,所以不是非常的准确。
 
具体的脚本如下:

SELECT OBJECT_NAME(object_id) [TableName],
    name [IndexName],
    STATS_DATE(object_id, stats_id)[LastStatsUpdate]
FROM sys.stats
WHERE name NOT LIKE '_WA%'--
AND STATS_DATE(object_id, stats_id)IS NOT NULL
AND OBJECTPROPERTY(object_id,'IsMSShipped') = 0 --查询用户自定义的
ORDER BY TableName, IndexName
 
-----代码来自于:http://stackoverflow.com/questions/2831293/tsql-know-when-index-rebuild-reorg-or-updatestatistics-was-last-run-on-sql-ser

 可以根据自己的增加条件筛选。

 
反对 0举报 0 评论 0
 

免责声明:本文仅代表作者个人观点,与乐学笔记(本网)无关。其原创性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容、文字的真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
    本网站有部分内容均转载自其它媒体,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责,若因作品内容、知识产权、版权和其他问题,请及时提供相关证明等材料并与我们留言联系,本网站将在规定时间内给予删除等相关处理.

  • mysql 8 查询报错(sql_mode=only_full_group_by)
    mysql 8 查询报错(sql_mode=only_full_group_by
    Expression #1 of ORDER BY clause is not in GROUP BY clause and contains nonaggregated column 'information_schema.PROFILING.SEQ' which is not functionally dependent on columns in GROUP BY clause; this is incompatible with sql_mode=only_full_
    02-10
  • sql语言 含有包含关系的查询 (含mysql 和sql sever)
    sql语言 含有包含关系的查询 (含mysql 和sql s
    一、sql中查询包含关系的查询       sql语句中包含关系可以使用 in 和exist,但有些时候仅仅用这两个是不够的,还有表示方法是  not exist(b expect a )可以表示a包含b。二、这里举一个例子      查询中涉及2个表,一个student表,一个sc表(用来储
    02-10
  • Oracle,查询表的创建时间和最后修改时间sql
    SELECT * FROM USER_TABLES 查看当前用户下的表SELECT * FROM DBA_TABLES 查看数据库中所有的表SELECTCREATED,LAST_DDL_TIME from user_objects where object_name=upper('表名')SELECT CREATED, LAST_DDL_TIMEFROM USER_OBJECTSWHERE OBJECT_NAME = 'PDCA_NE
    02-10
  • oracle下拼同比环比查询sql方法
    拼接方法:        /// summary/// 生成计算同比环比查询语句/// table:表名称;statColumns:要统计的值字段;yearColumn:年份字段名;monthColumn:月份字段名;joinColumns:除年月外的连接条件/// --上期无值或0本期有值不为0:1/// --上期有值不为0
    02-10
  • Oracle数据库列出所有表名SQL语句 oracle查询表
     select table_name from user_tables
    02-10
  • MySQL常用sql语句-----数据表的查询操作 mysql查询语句
    MySQL常用sql语句-----数据表的查询操作 mysql
    1.查询指定字段select c_id,c_age,c_name from t_student;select c_id as 编号,c_name as 姓名,c_age 性别 from t_student;2.去重查询select distinct c_address from t_studentselect distinct c_address,c_name from t_student3.比较运算符查询select c_nam
    02-10
  • mysql 查询表字段名,注释 , 以及sql拼接查询出
    #sql查询字段名,注释操作拼接#查询字段名和注释select COLUMN_NAME,COLUMN_COMMENT from information_schema.COLUMNS where table_name = '表名' and table_schema = '库名' order by ordinal_position #查询整个内容select * from information_schema.COLUM
    02-10
  • MySQL-SQL简单查询(单表) sql语句单表查询
    MySQL-SQL简单查询(单表) sql语句单表查询
    1.SELECT语句2.运算符的优先级利用Navicat中的查询方法:栗子1:查询所有货品信息栗子2:查询所有货品的id,productName,salePrice当查询错误的时候出现的界面:栗子3:查询所有货品id,名称和批发价(批发价=卖价*折扣)栗子4:查询所有货品的id,名称,和各进50个
    02-10
  • C#操作SqlServer MySql Oracle通用帮助类Db_Helper_DG(默认支持数据库读写分离、查询结果实体映射ORM)
    C#操作SqlServer MySql Oracle通用帮助类Db_Hel
    【前言】  作为一款成熟的面向对象高级编程语言,C#在ADO.Net的支持上已然是做的很成熟,我们可以方便地调用ADO.Net操作各类关系型数据库,在使用了多年的Sql_Helper_DG后,由于项目需要,于是乎,就准备写一个Mysql_Helper在实现过程中,发现ADO.Net封装之
    02-10
  • SQL查询oracle的nclob字段
    使用CONTAINS关键字查询NCLOB字段 SELECT  FORMATTED_MESSAGE    FROM     TBL_LOG WHERE     CONTAINS(FORMATTED_MESSAGE, p_FORMATTED_MESSAGE)0;
    02-10
点击排行