如果用客户ID、产品ID、年、月作为检索条件,则要对客户ID、产品ID、年、月创建
组合索引,这样速度就会快

解决方案 »

  1.   

    是的,同意用组合索引,create index on table_name(客户ID、月、产品ID)
      

  2.   

    这样的问题一般需要考虑以下几个方面:1、您的数据库端是否已经优化配置?
       包括硬件和合理的参数。
       1)硬件部分是否考虑到对于不同操作类型的数据分磁盘存储?一般大型系统采用多磁盘结构,例如7磁盘结构,不同类型的表空间放到不同的磁盘下,可以最大限度的降低磁盘争用。
       2)数据库初始化参数配置是否合理?对应于DSS/OLAP/OLTP环境应当有不同的参数配置方式。
    2、您的数据模型设计是否合理?
       1)表的设计是否合理?对应于大数据量表应当考虑采用聚簇结构或者分区表结构。
       2)索引是否合理?适当采用函数索引可以提高某些情况下的查询速度。
       3)表是否经过分析?
    3、您的业务逻辑是否经过优化?
       1)对于查询请求执行EXPLAIN_PLAN,优化您的查询语句。
       2)复杂的统计尽可能分阶段准备数据,这样可以降低统计时间。