ORACLE大表性能优化问题(求大神解答)
现有两张表
GOODS_PRICE(
GOODS_ID, PRICE, CODE,NAME ,RCODE (RCODE上建议了索引)
)
GOODS_NEW_PRICE(
GOODS_NEW_ID, PRICE, P_PRICE, LM_PRICE, LP_PRICE , CODE, NAME, RCODE, DEPT_CODE(RCODE, DEPT_CODE上建议了联合索引,该表是每个部门对应的价格表,如公司存在10个部门,GOODS_PRICE表有1千万条记录,那么该表存在的记录应该是1亿+)
)
GOODS_RATIO(
R_ID, P_RATIO, LM_RATIO, LP_RATIO, RCODE
)
业务数据上可能每天会对GOODS_NEW_PRICE表中的PRICE, P_PRICE, LM_PRICE, LP_PRICE 四个价格进行修改 (记录在2亿左右)
每个月会新导入一份从第三方拿到的GOODS_PRICE表(记录3千万)
现在需要用GOODS_PRICE.PRICE与GOODS_RATIO表中的(P_RATIO, LM_RATIO, LP_RATIO)三个折扣比例字段进行计算,得出的结果与GOODS_NEW_PRICE表的(PRICE, P_PRICE, LM_PRICE, LP_PRICE)四个值进行比较。
如果GOODS_PRICE.PRICE与GOODS_NEW_PRICE.PRICE相等,不更新后面三个字段(P_PRICE, LM_PRICE, LP_PRICE)。
如果有变化且计算出来的P_PRICE小于GOODS_NEW_PRICE.P_PRICE则更新GOODS_NEW_PRICE.P_PRICE(LM_PRICE, LP_PRICE逻辑一样)。
关联关系为
GOODS_PRICE.CODE = GOODS_NEW_PRICE.CODE
GOODS_PRICE.NAME = GOODS_NEW_PRICE.NAME
GOODS_PRICE.RCODE = GOODS_NEW_PRICE.RCODE
请问各位大神,这个怎么样才能在一个小时左右完成呀。
GOODS_PRICE(
GOODS_ID, PRICE, CODE,NAME ,RCODE (RCODE上建议了索引)
)
GOODS_NEW_PRICE(
GOODS_NEW_ID, PRICE, P_PRICE, LM_PRICE, LP_PRICE , CODE, NAME, RCODE, DEPT_CODE(RCODE, DEPT_CODE上建议了联合索引,该表是每个部门对应的价格表,如公司存在10个部门,GOODS_PRICE表有1千万条记录,那么该表存在的记录应该是1亿+)
)
GOODS_RATIO(
R_ID, P_RATIO, LM_RATIO, LP_RATIO, RCODE
)
业务数据上可能每天会对GOODS_NEW_PRICE表中的PRICE, P_PRICE, LM_PRICE, LP_PRICE 四个价格进行修改 (记录在2亿左右)
每个月会新导入一份从第三方拿到的GOODS_PRICE表(记录3千万)
现在需要用GOODS_PRICE.PRICE与GOODS_RATIO表中的(P_RATIO, LM_RATIO, LP_RATIO)三个折扣比例字段进行计算,得出的结果与GOODS_NEW_PRICE表的(PRICE, P_PRICE, LM_PRICE, LP_PRICE)四个值进行比较。
如果GOODS_PRICE.PRICE与GOODS_NEW_PRICE.PRICE相等,不更新后面三个字段(P_PRICE, LM_PRICE, LP_PRICE)。
如果有变化且计算出来的P_PRICE小于GOODS_NEW_PRICE.P_PRICE则更新GOODS_NEW_PRICE.P_PRICE(LM_PRICE, LP_PRICE逻辑一样)。
关联关系为
GOODS_PRICE.CODE = GOODS_NEW_PRICE.CODE
GOODS_PRICE.NAME = GOODS_NEW_PRICE.NAME
GOODS_PRICE.RCODE = GOODS_NEW_PRICE.RCODE
请问各位大神,这个怎么样才能在一个小时左右完成呀。
...全文
相关推荐
Oracle疑难解答集
**表连接的update,经典问题** 在Oracle中,更新带有连接的表可能会遇到性能问题,因为这样的操作会涉及大量数据。
oracle 常见问题解答
Oracle数据库是全球广泛使用的大型关系型数据库管理系统,尤其在企业级应用中占据重要地位。针对“Oracle常见问题解答”这个主题,我们可以深入探讨以下几个关键知识点:1.
Oracle 问题集
解答可能会涉及如何使用EXPLAIN PLAN分析查询执行计划,理解并调整SQL语句的执行效率;在何时何地创建B树索引、位图索引或函数索引,以及如何使用分区技术提高大表的查询速度。
Oracle 10g数据库基础教程[孙风栋 等][课后习题解答(选择题答案)]
**表和索引** 表是数据存储的基本单元,索引则用于提高查询性能。理解如何创建、修改和删除表,以及如何设计合理的索引策略,对于数据库性能优化至关重要。6.
ASP技术常遇问题解答-如何处理Oracle中较大的文本数据?.zip
在ASP(Active Server Pages)开发过程中,我们可能会遇到在Oracle数据库中处理大量文本数据的问题。


