业务系统中有 Table01, Table02, Table03, 而且随着时间推移, 会不断出现新表Tablen, 表中所有字段一样,惟有年份 year 月份 month 不同, 即每月数据是单独存储在一张表中, 
现在要汇总各年数据进行分析, 需要将所有表union起来, 因为数据量较大, 所以要求建立物化视图不知如何可以实现该视图

解决方案 »

  1.   

    据我了解,物化视图不能动态SQL,我的想法是,你可以在建立物化视图前先建了一个视图,视图由存储过程动态生成,然后物化视图从视图获取数据
    像你这样union起来如果表太多的话可能还会遇到SQL长度的问题
      

  2.   

    见过和你情况差不多的项目。开始使用物化视图。结果完全失败。
    在短短三天内加班加点修改整个体系结构。union的话也可能会超过sql语句的长度。
    我的想法是将每年的数据查询出来(经过条件过滤,时间精度的汇总减少数据量)插入到临时表中。
    然后再查询临时表。你看在你的体系中这样做合适不?