日期:2014-05-16  浏览次数:20979 次

物化视图怎样才能支持持久排序
我建的物化视图在最后的sql语句后边加上 order by XX
该物化视图只支持排序一天,第二天就不排序了!
望请哪位高手帮忙解决一下

------解决方案--------------------
探讨
物化视图在Oracle数据库中是一张临时表,视图被删,该临时表也被删,
所以我在建物化视图的时候,直接加上order by ,希望在造出来的临时表中
数据是排序的,,可是呢,这张表里的数据只坚持了一天排序,第二条就不排了!

物化视图是否支持排序?
如果支持,应该怎么写?


------解决方案--------------------
探讨
引用:

物化视图在Oracle数据库中是一张临时表,视图被删,该临时表也被删,
所以我在建物化视图的时候,直接加上order by ,希望在造出来的临时表中
数据是排序的,,可是呢,这张表里的数据只坚持了一天排序,第二条就不排了!

物化视图是否支持排序?
如果支持,应该怎么写?



你的materialized view的语句是怎样的。贴出来看看。

------解决方案--------------------
create materialized view VIEW_ABC

会建一个表VIEW_ABC 视图的数据就存在这个表里。

你上面只是把 排序后的数据存到 VIEW_ABC。


这个就像我们 用户注册一样。
用户的数据是按 ”注册时间“顺序 插入的。

可我们 select * from users 出来的数据一定是按 “注册时间” 排序出来的吗?

想一想就清楚了。
------解决方案--------------------
所以使用时还要用 select * from VIEW_ABC order by id

VIEW_ABC.id 上加索引,order by 也不慢。