View: scrud.relationship_view

Schema scrud
Materialized View Name relationship_view
Owner postgres
Tablespace DEFAULT
Description Lists all foreign key columns and their relation with the parent tables.
 CREATE OR REPLACE VIEW scrud.relationship_view
 AS
 SELECT o.conname AS constraint_name,
    ( SELECT pg_namespace.nspname
           FROM pg_namespace
          WHERE pg_namespace.oid = m.relnamespace) AS table_schema,
    m.relname AS table_name,
    ( SELECT a.attname
           FROM pg_attribute a
          WHERE a.attrelid = m.oid AND a.attnum = o.conkey[1] AND a.attisdropped = false) AS column_name,
    ( SELECT pg_namespace.nspname
           FROM pg_namespace
          WHERE pg_namespace.oid = f.relnamespace) AS references_schema,
    f.relname AS references_table,
    ( SELECT a.attname
           FROM pg_attribute a
          WHERE a.attrelid = f.oid AND a.attnum = o.confkey[1] AND a.attisdropped = false) AS references_field
   FROM pg_constraint o
   LEFT JOIN pg_class c ON c.oid = o.conrelid
   LEFT JOIN pg_class f ON f.oid = o.confrelid
   LEFT JOIN pg_class m ON m.oid = o.conrelid
  WHERE o.contype = 'f'::"char" AND (o.conrelid IN ( SELECT c_1.oid
   FROM pg_class c_1
  WHERE c_1.relkind = 'r'::"char"));