繁体   English   中英

使用 pgAdmin 4 对 PostgreSQL 数据库的所有表进行选择查询

[英]Do a select query on all tables of PostgreSQL database using pgAdmin 4

我有大约 90 个模式的数据库。 在每个模式中,我转到“物化视图”并转到一个名为“product_visitor_view”的视图,然后创建一个 SELECT 脚本并编写此脚本并运行它并查看结果:

SELECT priority, count(*)
FROM ag_modem_01.product_visitor_view
group by priority;

但是,我不能为所有 90 个模式执行此操作。 有没有一种方法可以对所有模式执行此操作,结果将显示在页面中的每个模式,我该怎么做?

先感谢您。

您可以使用以下查询为每个模式准备 SQL。 这个想法是代替手动编写所有查询,您可以使用系统表pg_matviews包含有关物化视图的信息。 获得列表后,只需在所有行之间进行联合。

select 
string_agg('select '''||schemaname||''' as schema,priority,count(*) from '||schemaname||'.'||matviewname
           ||' group by priority '||chr(10),' Union All '||chr(10)
           )
from pg_matviews
where matviewname='product_visitor_view'
and ispopulated=true; -- to filter out Views which has not been populated

获取此查询的输出并在 Querytool 中运行它。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM