【问题标题】:VIEW or MATERIALIZED VIEW? [duplicate]视图还是物化视图? [复制]
【发布时间】:2015-01-22 15:52:27
【问题描述】:

我有两个表:CITY(~50000 行)和 COUNTRY(~220 行)。有一个任务,通过 VIEW 提供哪个城市在哪个国家?如果您能够使用物化视图,会更好吗? 我写了当前的查询:

CREATE VIEW cc as
SELECT ct.NAME AS "country", c.NAME AS "cty"
FROM CITY c JOIN COUNTRY ct ON cnt.CODE=c.COUNTRY;

它为我提供了我需要的信息,但我没有意识到普通视图和实体化视图之间有任何区别。哪个是相关的?

【问题讨论】:

  • 我不认为这是一个问题Which is better,而是-哪个是相关的?
  • 视图是一个纯粹的宏之类的东西。其中物化视图就像您的 sql 的缓存数据。以某种速率刷新。(用户定义)
  • 感谢@Coffee,更正了问题。
  • @MaheswaranRavisankar 我从定义上理解它,但我的意思是在我的情况下这是最佳的。在我看来,使用物化的没有太大意义,因为表中没有很多数据

标签: sql oracle


【解决方案1】:

视图“只是”当您想查看视图内容时执行的 SQL 语句。它不是数据库中实际存在的表。暗示,无论何时您从视图中读取,它都是最新的。

物化视图是数据库中的实际表。它是在您创建时创建的,如果您想更新它,您必须对其进行维护。

它们是不同的东西。好坏取决于您的要求。

【讨论】:

    猜你喜欢
    • 2011-01-16
    • 2011-04-06
    • 2023-04-11
    • 2014-10-02
    • 2019-10-07
    • 2014-06-07
    • 1970-01-01
    • 2021-09-16
    • 2015-06-29
    相关资源
    最近更新 更多