Skip to content

Commit

Permalink
Indexes with boolean values (#31)
Browse files Browse the repository at this point in the history
* mfvanek/pg-index-health#322

Query to check on indexes with boolean values.

* mfvanek/pg-index-health#322

Fix formatting.
Add header and description.
  • Loading branch information
Evreke authored Feb 6, 2024
1 parent 46fbf91 commit 6a5b823
Showing 1 changed file with 24 additions and 0 deletions.
24 changes: 24 additions & 0 deletions sql/indexes_with_boolean.sql
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
/*
* Copyright (c) 2019-2024. Ivan Vakhrushev and others.
* https://github.com/mfvanek/pg-index-health-sql
*
* Licensed under the Apache License 2.0
*/

-- Finds indexes that contains boolean values.
select
pi.indrelid::regclass::text as table_name,
pi.indexrelid::regclass::text as index_name,
col.attname as column_name,
col.attnotnull as column_not_null
from
pg_catalog.pg_index pi
join pg_catalog.pg_class pc on pc.oid = pi.indexrelid
join pg_catalog.pg_namespace pn on pn.oid = pc.relnamespace
join pg_catalog.pg_attribute col on col.attrelid = pi.indrelid and col.attnum = any(pi.indkey)
where pn.nspname = :schema_name_param::text
and not pi.indisunique
and pi.indisready
and pi.indisvalid
and col.atttypid = 'boolean'::regtype
order by table_name, index_name;

0 comments on commit 6a5b823

Please sign in to comment.