ViewとTableで同じデータを持ったオブジェクトを作成する事が出来るが、
それぞれメリットデメリットがある。Viewは常に最新のデータが反映されるという
メリットがあるが、毎回計算が入るので速度が遅い。Tableに関しては、速度は速いが
最新のデータが常に反映されない。用途にもよるので、それぞれ最適な方法を
選択する必要がある。最適なのは、テーブルのデータが常に最新のデータで反映
される事だが、Viewを必要とする時は対外テーブルが分散されている場合が多い…

以下のテーブルとビューは同じ結果を抽出することが出来る。

CREATE VIEW V_Surface
(Name, ContinentSurface, CountryAvgSurface)
AS SELECT Continent, SUM(SurfaceArea),
AVG(SurfaceArea)
FROM Country GROUP BY Continent;


CREATE TABLE T_Surface
AS SELECT Continent AS Name,
SUM(SurfaceArea) AS ContinentSurface,
AVG(SurfaceArea) AS CountryAvgSurface
FROM Country GROUP BY Continent;

table_vs_view

Comments are closed.

Post Navigation