SELECT TABSCHEMA CONCAT '.' CONCAT TABNAME AS TABLE
, IID AS INDEX_ID
, CASE UNIQUERULE
WHEN 'P' THEN 'Primary key'
WHEN 'U' THEN 'Unique'
WHEN 'D' THEN 'Nonunique'
END AS TYPE
, INDNAME AS INDEX_NAME
, REPLACE(SUBSTRING(COLNAMES,2,LENGTH(COLNAMES)),'+',',') AS COLUMNS
, CASE INDEXTYPE
WHEN 'BLOK' THEN 'Block index'
WHEN 'CLUS' THEN 'Clustering index'
WHEN 'DIM' THEN 'Dimension block index'
WHEN 'REG' THEN 'Regular index'
WHEN 'XPTH' THEN 'XML path index'
WHEN 'XRGN' THEN 'XML region index'
WHEN 'XVIL' THEN 'Index over XML column (logical)'
WHEN 'XVIP' THEN 'Index over XML column (physical)'
END AS INDEX_TYPE
FROM SYSCAT.INDEXES
WHERE INDSCHEMA NOT LIKE 'SYS%'
ORDER BY TABLE, INDEX_ID
|