心影(LM)

导航

sql servse 查询当前库内表索引值

SELECT TOP 100 PERCENT --a.id,   
      CASE WHEN b.keyno = 1 THEN c.name ELSE '' END AS 表名,   
      CASE WHEN b.keyno = 1 THEN a.name ELSE '' END AS 索引名称, d.name AS 列名,   
      b.keyno AS 索引顺序, CASE indexkey_property(c.id, b.indid, b.keyno, 'isdescending')   
      WHEN 1 THEN '降序' WHEN 0 THEN '升序' END AS 排序, CASE WHEN p.id IS NULL   
      THEN '' ELSE '' END AS 主键, CASE INDEXPROPERTY(c.id, a.name, 'IsClustered')   
      WHEN 1 THEN '' WHEN 0 THEN '' END AS 聚集, CASE INDEXPROPERTY(c.id,   
      a.name, 'IsUnique') WHEN 1 THEN '' WHEN 0 THEN '' END AS 唯一,   
      CASE WHEN e.id IS NULL THEN '' ELSE '' END AS 唯一约束,   
      a.OrigFillFactor AS 填充因子, c.crdate AS 创建时间, c.refdate AS 更改时间  
FROM dbo.sysindexes a INNER JOIN  
      dbo.sysindexkeys b ON a.id = b.id AND a.indid = b.indid INNER JOIN  
      dbo.syscolumns d ON b.id = d.id AND b.colid = d.colid INNER JOIN  
      dbo.sysobjects c ON a.id = c.id AND c.xtype = 'U' LEFT OUTER JOIN  
      dbo.sysobjects e ON e.name = a.name AND e.xtype = 'UQ' LEFT OUTER JOIN  
      dbo.sysobjects p ON p.name = a.name AND p.xtype = 'PK'  
WHERE (OBJECTPROPERTY(a.id, N'IsUserTable') = 1) AND (OBJECTPROPERTY(a.id,   
      N'IsMSShipped') = 0) AND (INDEXPROPERTY(a.id, a.name, 'IsAutoStatistics') = 0)  
ORDER BY c.name, a.name, b.keyno  

 

posted on 2019-04-11 13:19  心影(LM)  阅读(366)  评论(0编辑  收藏  举报