oracle 跨分区查询效率,Oracle分区表做跨分区查询

问:有一张大表,其中按时间字段(TIME_ID)进行表分区(按季度分区),但是如果业务人员做跨季度的大批量数据的查询时,未能走TIME_ID分区索引,导致全表扫描。此种情况该如何处理?

示例解析:

1、我们根据oracle中sh用户自带的SALES表创建一个新的分区表(TIME_ID上建季度分区;插入一个新的字段CREATE_ID,上面不建分区),步骤如下:

create table SALES_1998_part

(

PROD_ID       NUMBER not null,

CUST_ID       NUMBER not null,

TIME_ID       DATE not null,

CREATE_ID     DATE not null

)

partition by range (TIME_ID)

(

partition SALES_Q1_1998 values less than (TO_DATE(' 1998-04-01', 'SYYYY-MM-DD'))

tablespace EXAMPLE

pctfree 0

initrans 1

maxtrans 255

storage

(

initial 64K

minextents 1

maxextents unlimited

),

partition SALES_Q2_1998 values less than (TO_DATE(' 1998-07-01', 'SYYYY-MM-DD'))

tablespace EXAMPLE

pctfree 0

initrans 1

maxtrans 255

storage

(

initial 64K

minextents 1

maxextents unlimited

),

partition SALES_Q3_1998 values less than (TO_DATE(' 1998-10-01', 'SYYYY-MM-DD'))

tablespace EXAMPLE

pctfree 0

initrans 1

maxtrans 255

storage

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值