Advertisement
IT-Academy

Select index 2

Dec 14th, 2017
135
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. SELECT
  2.   U.usename                AS user_name,
  3.   ns.nspname               AS schema_name,
  4.   idx.indrelid :: REGCLASS AS table_name,
  5.   i.relname                AS index_name,
  6.   idx.indisunique          AS is_unique,
  7.   idx.indisprimary         AS is_primary,
  8.   am.amname                AS index_type,
  9.   idx.indkey,
  10.        ARRAY(
  11.            SELECT pg_get_indexdef(idx.indexrelid, k + 1, TRUE)
  12.            FROM
  13.              generate_subscripts(idx.indkey, 1) AS k
  14.            ORDER BY k
  15.        ) AS index_keys,
  16.   (idx.indexprs IS NOT NULL) OR (idx.indkey::int[] @> array[0]) AS is_functional,
  17.   idx.indpred IS NOT NULL AS is_partial
  18. FROM pg_index AS idx
  19.   JOIN pg_class AS i
  20.     ON i.oid = idx.indexrelid
  21.   JOIN pg_am AS am
  22.     ON i.relam = am.oid
  23.   JOIN pg_namespace AS NS ON i.relnamespace = NS.OID
  24.   JOIN pg_user AS U ON i.relowner = U.usesysid
  25. WHERE NOT nspname LIKE 'pg%'; -- Excluding system tables
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement