Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/76.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql 视图还是物化视图?_Sql_Oracle - Fatal编程技术网

Sql 视图还是物化视图?

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语句,

我有两张桌子:城市(约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语句,当您想查看视图的内容时执行该语句。它不是数据库中实际存在的表。这意味着,无论何时从视图中阅读,它都是最新的

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


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

我不认为这是一个问题<代码>哪一个更好,而是-哪一个相关?视图是一个纯宏观的东西。。其中,实体化视图类似于sql的缓存数据。以某种速度刷新。(用户定义)谢谢@Coffee,更正了问题。@MaheswaranRavisankar我从定义上理解了它,但我的意思是在我的情况下,哪一个是最佳的。在我看来,使用物化数据并没有多大意义,因为表中并没有太多数据