Query goal: | Find in case of base tables, materialized views, and views the number of tables based on the length of the table name. |
Query type: | Sofware measure (Numeric values (software measures) about the database) |
Query license: | MIT License |
Data source: | INFORMATION_SCHEMA+system catalog |
SQL query: | Click on query to copy it
WITH tables AS (SELECT nspname AS table_schema, relname AS table_name, CASE WHEN relkind='r' THEN 'BASE TABLE' WHEN relkind='m' THEN 'MATERIALIZED VIEW' ELSE 'VIEW' END AS table_type FROM pg_class INNER JOIN pg_namespace ON pg_class.relnamespace=pg_namespace.oid WHERE relkind IN ('r', 'm','v') AND nspname NOT IN (SELECT schema_name FROM INFORMATION_SCHEMA.schemata WHERE schema_name<>'public' AND schema_owner='postgres' AND schema_name IS NOT NULL)) SELECT table_type, length(table_name) AS length, Count(*) AS nr_of_occurrences, Round(Count(*)::decimal*100/(SELECT Count(*) FROM tables AS t2 WHERE t2.table_type=tables.table_type),1) AS percentage_of_all_columns FROM tables GROUP BY table_type, length(table_name) ORDER BY table_type, length; |
Collection name | Collection description |
---|---|
Find problems about names | A selection of queries that return information about the names of database objects. Contains all the types of queries - problem detection, software measure, and general overview. |
Find problems by overview | Queries that results point to different aspects of database that might have problems. A human reviewer has to decide based on the results as to whether there are problems or not . |
Category name | Category description |
---|---|
Naming | Queries of this category provide information about the style of naming. |