300w+ 表 与 3000w+ 简单两表联查,物化视图问题。
就两个表连接查询的问题。
模拟下简单的表结构:
客户信息表 cust
custId,region -- 客户主键Id、地区名称
交易表 trade
custId,trade_date 等. -- 客户Id,交易日期,其它的交易信息。
现需求是要 查询各地区 的交易情况的报表。
逻辑很简单,这样子实现就可以了
SQL code
select trade.*,cust.region from cust,trade where cust.custid=trade.custid
但是由于两个表 的数据太多,生产上面交易的数据都是上亿了的,如果根据上面的查询 再group by 地区 就什么都出不来了。
两个表都是通过dblink查询到,
后来通过想通过物化视图解决下,后实现之,刚建立完 查询效果不错,但一天之后再去查询就很慢了。
------解决方案--------------------
物化视图本身就是一个结果集了,怎么还会慢呢~~~~~~~
物化视图不行就换个实体表,每天删除重建立~~