Name: | view_column_usage |
Owner: | postgres |
Has rules: | |
Has Triggers: | |
Comment: |
Name | Type | Length | |
|
view_catalog | sql_identifier | -1 |
|
view_schema | sql_identifier | -1 |
|
view_name | sql_identifier | -1 |
|
table_catalog | sql_identifier | -1 |
|
table_schema | sql_identifier | -1 |
|
table_name | sql_identifier | -1 |
|
column_name | sql_identifier | -1 |
CREATE VIEW view_column_usage AS
SELECT DISTINCT (current_database())::sql_identifier AS view_catalog, (nv.nspname)::sql_identifier AS view_schema, (v.relname)::sql_identifier AS view_name, (current_database())::sql_identifier AS table_catalog, (nt.nspname)::sql_identifier AS table_schema, (t.relname)::sql_identifier AS table_name, (a.attname)::sql_identifier AS column_name FROM pg_namespace nv, pg_class v, pg_depend dv, pg_depend dt, pg_class t, pg_namespace nt, pg_attribute a WHERE ((((((((((((((((nv.oid = v.relnamespace) AND (v.relkind = 'v'::"char")) AND (v.oid = dv.refobjid)) AND (dv.refclassid = ('pg_class'::regclass)::oid)) AND (dv.classid = ('pg_rewrite'::regclass)::oid)) AND (dv.deptype = 'i'::"char")) AND (dv.objid = dt.objid)) AND (dv.refobjid <> dt.refobjid)) AND (dt.classid = ('pg_rewrite'::regclass)::oid)) AND (dt.refclassid = ('pg_class'::regclass)::oid)) AND (dt.refobjid = t.oid)) AND (t.relnamespace = nt.oid)) AND (t.relkind = ANY (ARRAY['r'::"char", 'v'::"char"]))) AND (t.oid = a.attrelid)) AND (dt.refobjsubid = a.attnum)) AND pg_has_role(t.relowner, 'USAGE'::text)) ORDER BY (current_database())::sql_identifier, (nv.nspname)::sql_identifier, (v.relname)::sql_identifier, (current_database())::sql_identifier, (nt.nspname)::sql_identifier, (t.relname)::sql_identifier, (a.attname)::sql_identifier;
ALTER TABLE information_schema.view_column_usage OWNER TO postgres;
See Also
List of views