千家信息网

Oracle 虚拟列 子分区 virtual column partition

发表于:2024-11-27 作者:千家信息网编辑
千家信息网最后更新 2024年11月27日,Oracle 11g 虚拟列子分区实验以下两个create 语句均为创建成功;需求描述:项目要求对3个字段进行分区,如时间,小时,还有个区域ID,便联想到虚拟列。drop table test_par
千家信息网最后更新 2024年11月27日Oracle 虚拟列 子分区 virtual column partition

Oracle 11g 虚拟列子分区实验

以下两个create 语句均为创建成功;

需求描述:

项目要求对3个字段进行分区,如时间,小时,还有个区域ID,便联想到虚拟列。

drop table test_part purge; create table test_part (t_time date, hour number, city_id number, hour_city varchar2(108) GENERATED ALWAYS AS(to_char(hour)||'|'||to_char(city_id))) partition by range(t_time) subpartition byhash(hour_city) (partition part_201705 values less than(to_date('20170601', 'yyyymmdd')) (subpartition subpart_201705_01,  subpartition subpart_201705_02), partition part_201706 values less than (to_date('20170701', 'yyyymmdd')) (subpartition subpart_201706_01,  subpartition subpart_201706_02)) create table test_part (t_time date, hour number(2), city_id number, day_hour varchar2(50) GENERATED ALWAYS AS (to_char(t_time,'yyyymmdd')||'|'||to_char(hour))) partition by range(day_hour) subpartition byhash(city_id) (partition part_201705 values less than('2017060100') (subpartition subpart_201705_01,  subpartition subpart_201705_02), partition part_201706 values less than ('2017070100') (subpartition subpart_201706_01,  subpartition subpart_201706_02))


0