sql - 获取物化视图的约束和索引
问题描述
查询以获取 Postgres 中所有物化视图的所有索引和所有约束。以下查询仅返回表上的索引。
SELECT indexname, indexdef
FROM pg_indexes
WHERE schemaname = 'public' AND tablename = 'table'
解决方案
该视图提供了对数据库中每个索引的pg_indexes
有用信息(以及物化视图的索引)的访问。您可以查找以仅过滤掉物化视图 ( ):pg_class
relkind = 'm'
select i.*
from pg_indexes i
join pg_class c
on schemaname = relnamespace::regnamespace::text
and tablename = relname
where relkind = 'm'
schemaname | tablename | indexname | tablespace | indexdef
------------+-----------+-----------------+------------+------------------------------------------------------------------
public | my_view | my_view_id_idx | | CREATE UNIQUE INDEX my_view_id_idx ON my_view USING btree (id)
public | sen_view | sen_view_id_idx | | CREATE UNIQUE INDEX sen_view_id_idx ON sen_view USING btree (id)
(2 rows)
推荐阅读
- xamarin - 如何为 xamarin.forms iOS 中的条目单元格设置背景颜色和文本颜色?
- c++ - 是否有理由在标题中保留完全专业化的模板?
- r - 测试和训练集的分层拆分
- python - 从 tkinter 输入框中创建带有 2 个整数变量的 if 语句
- ios - 将异步块回调转换为同步返回值
- r - 如何在缺少值的地方插入 0
- c++ - c++ 中用于secure_string实现的自定义分配器没有被调用
- c++ - 有没有办法根据用户对一对向量进行排序?
- c - 添加元素链表
- kubernetes - 如何使用 Kubernetes controller-gen 在外部结构中指定可选字段?