Skip to content

Count Indexes Per Table in a Schema

List each table in an Oracle schema with how many indexes it has, using ALL_INDEXES grouped and ordered by table name.

Language: SQL

Added on: 19th August 2026

SELECT table_name, COUNT(*) AS index_count
FROM all_indexes
WHERE owner = 'SCHEMA_NAME'
GROUP BY table_name
ORDER BY table_name;

Caveats

Oracle data dictionary. Replace SCHEMA_NAME. Filter TABLE_OWNER instead of OWNER if you want indexes on that schema's tables regardless of who owns the index.