Mysql

視圖和物化視圖有什麼區別

  • October 20, 2017

PostgreSQL 的物化視圖和 MySQL 的視圖有什麼區別?

AVIEW是一個儲存查詢。當您從中選擇時,您實際上是在執行查詢。

CREATE VIEW foo
AS
 SELECT col1,col2
 FROM bar;

本質上是

SELECT foo.*
FROM (
 SELECT col1,col2
 FROM bar
) AS foo;

物化視圖或多或少是記憶體(或物化)到磁碟的視圖,

CREATE IF NOT EXISTS TABLE foo
AS
 SELECT col1,col2
 FROM bar;

額外的好處是,至少在 PostgresSQL 中,有一個命令REFRESH MATERIALIZED VIEW可以向它提供視圖的名稱,它會從頭開始重新生成它:REFRESH MATERIALIZED VIEW foo;

引用自:https://dba.stackexchange.com/questions/188899