数据库 
首页 > 数据库 > 浏览文章

PostgreSQL物化视图(materialized view)过程解析

(编辑:jimmy 日期: 2024/11/27 浏览:3 次 )

这篇文章主要介绍了PostgreSQL物化视图(materialized view)过程解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

1、创建视图

CREATE MATERIALIZED VIEW [ IF NOT EXISTS ] table_name
[ (column_name [, ...] ) ]
[ WITH ( storage_parameter [= value] [, ... ] ) ]
[ TABLESPACE tablespace_name ]
AS query
[ WITH [ NO ] DATA ]

2、删除视图

DROP MATERIALIZED VIEW table_name

3、创建索引

CREATE INDEX idx_index_name ON table_name USING index(column);

4、手动刷新视图

REFRESH MATERIALIZED VIEW [ CONCURRENTLY ] name
  [ WITH [ NO ] DATA ]

物化视图的创建机制和mysql的view表是一样的,直接从对应表查询相关信息,但是物化视图的查询和普通表是一样的,相当于一个缓存机制,将复杂的查询结果存放在物化视图中,但每次需要refresh操作更新新的数据进去,适用于对数据实时性不是特别高的需求,版本是PostgreSQL 9.3之后才有的,在9.3版本刷新视图的时候不可进行查询工作,在9.4版本之后,加上CONCURRENTLY 参数可支持读时查询,但是必须有索引且刷新速度会变慢(用时间换取查询锁)。目前还不支持增量查询。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。

上一篇:MySQL跨表查询与跨表更新
下一篇:MySQL拼接字符串函数GROUP_CONCAT详解
友情链接:杰晶网络 DDR爱好者之家 南强小屋 黑松山资源网 白云城资源网 网站地图 SiteMap