最近又开始收拾数据库了,以前总记得View是不能提高性能的,俺总是私底下想,难道自己这样定义了View,系统都知道了,还不给这个查询优化一下。
今天没事就比划了一次,结果如下。
VIEW定义如下:
CREATE OR REPLACE VIEW myview AS
SELECT weather.city, weather.temp_lo, weather.temp_hi, weather.prcp, weather.date, cities.name, cities.location
FROM weather, cities
WHERE weather.city::text = cities.name::text;
执行3 次下面的查询
SELECT weather.city, weather.temp_lo, weather.temp_hi, weather.prcp, weather.date, cities.name, cities.location
FROM weather, cities
WHERE weather.city::text = cities.name::text;
时间分别是:
12ms,10ms,17ms
直接从VIEW是查询
select * from myview;
时间分别是:
10ms, 12ms,10ms
由于是自己的工作用机,应该受到其它程序的影响,所以性能稍有变化。
不过从时间上看,应该是真的是没做什么优化啊。
他人诚不于欺也。
阅读(573) | 评论(0) | 转发(0) |