zoukankan      html  css  js  c++  java
  • SQL SERVER获取某张表创建的索引

     1 --方案一
     2 SELECT 索引名称=a.name
     3 ,表名=c.name
     4 ,索引字段名=d.name
     5 ,索引字段位置=d.colid
     6 FROM sysindexes a
     7 JOIN sysindexkeys b ON a.id=b.id AND a.indid=b.indid
     8 JOIN sysobjects c ON b.id=c.id
     9 JOIN syscolumns d ON b.id=d.id AND b.colid=d.colid
    10 WHERE a.indid NOT IN(0,255)
    11 AND c.name='tableName' --你的表名称
    12 ORDER BY c.name,a.name,d.name ASC
    13 
    14 --方案二
    15 WITH tbl
    16 AS (
    17     SELECT A.index_id, A.object_id, B.name
    18     FROM   sys.index_columns A
    19     INNER JOIN sys.columns B ON A.column_id=B.column_id AND A.object_id=B.object_id
    20 )
    21 
    22 SELECT A.name AS TableName, B.name AS IndexName, B.rows, C.columnname AS ColumnName
    23 FROM sys.tables AS A
    24 INNER JOIN sysindexes B ON A.object_id=B.id
    25 INNER JOIN (
    26     SELECT   index_id, object_id, (
    27     SELECT name+','
    28     FROM   tbl
    29     WHERE  tbl.index_id=A.index_id AND tbl.object_id=A.object_id
    30     FOR XML PATH('')
    31     ) AS columnname
    32     FROM     tbl A
    33     GROUP BY index_id, object_id
    34 ) C ON A.object_id=C.object_id AND B.indid=C.index_id
    35 WHERE    B.groupid=1
    36 --查询某个表的索引
    37 AND A.name='表名称' 
    38 --包含某个字段名
    39 and  C.columnname  like '%字段名%'
    40 ORDER BY B.rows DESC,A.name,b.name,b.indid ASC
  • 相关阅读:
    原型设计作业
    案例分析作业
    202103226-1 编程作业
    准备工作
    通读《构建之法》
    顺序栈的基本操作
    原型设计(图书馆小程序)
    案例分析
    词频统计
    写出这个数
  • 原文地址:https://www.cnblogs.com/xy0710/p/13364544.html
Copyright © 2011-2022 走看看