Sql 视图还是物化视图?
我有两张桌子:城市(约50000行)和乡村(约220行)。有一个任务,通过视图提供哪个城市在哪个国家?如果您能够使用物化视图,它会更好吗? 我写了当前查询:Sql 视图还是物化视图?,sql,oracle,Sql,Oracle,我有两张桌子:城市(约50000行)和乡村(约220行)。有一个任务,通过视图提供哪个城市在哪个国家?如果您能够使用物化视图,它会更好吗? 我写了当前查询: CREATE VIEW cc as SELECT ct.NAME AS "country", c.NAME AS "cty" FROM CITY c JOIN COUNTRY ct ON cnt.CODE=c.COUNTRY; 它提供了我需要的信息,但我没有意识到普通视图和物化视图之间有任何区别。哪个是相关的 视图“只是”一条SQL语句,
CREATE VIEW cc as
SELECT ct.NAME AS "country", c.NAME AS "cty"
FROM CITY c JOIN COUNTRY ct ON cnt.CODE=c.COUNTRY;
它提供了我需要的信息,但我没有意识到普通视图和物化视图之间有任何区别。哪个是相关的 视图“只是”一条SQL语句,当您想查看视图的内容时执行该语句。它不是数据库中实际存在的表。这意味着,无论何时从视图中阅读,它都是最新的
物化视图是数据库中的实际表。它是在您创建它时创建的,如果您希望更新它,则必须对其进行维护
它们是不同的东西。好与坏取决于您的需求。我不认为这是一个问题<代码>哪一个更好代码>,而是-哪一个相关?视图是一个纯宏观的东西。。其中,实体化视图类似于sql的缓存数据。以某种速度刷新。(用户定义)谢谢@Coffee,更正了问题。@MaheswaranRavisankar我从定义上理解了它,但我的意思是在我的情况下,哪一个是最佳的。在我看来,使用物化数据并没有多大意义,因为表中并没有太多数据