查詢某個表的索引資訊

starive發表於2015-04-27
以微軟範例資料庫 AdventureWorks2008R2為例子。

  1. SELECT 索引名稱=a.name 
  2. ,表名=c.name 
  3. ,索引欄位名=d.name 
  4. ,索引欄位位置=d.colid 
  5. FROM sysindexes a 
  6. JOIN sysindexkeys b ON a.id=b.id AND a.indid=b.indid 
  7. JOIN sysobjects c ON b.id=c.id 
  8. JOIN syscolumns d ON b.id=d.id AND b.colid=d.colid 
  9. WHERE a.indid NOT IN(0,255) 
  10. -- and c.xtype='U' and c.status>0 --查所有使用者表 
  11. AND c.name='tablename'  --查指定表 
  12. ORDER BY c.name,a.name,d.name





如果要知道某個索引是聚集索引,還是非聚集索引,可以檢視其MSSSMS:


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/26435490/viewspace-1605404/,如需轉載,請註明出處,否則將追究法律責任。

相關文章