技术编程|openGauss魔改PG?它能兼容Oracle的数据库表吗?( 四 )
postgres=# CREATE TABLE t_hash_partition
(deptno NUMBER, deptname VARCHAR(32))
PARTITION BY HASH(deptno)
(PARTITION p1 TABLESPACE pg_default, PARTITION p2 TABLESPACE pg_default,
PARTITION p3 TABLESPACE pg_default, PARTITION p4 TABLESPACE pg_default);
ERROR: syntax error at or near "HASH"
LINE 2: PARTITION BY HASH(deptno)
4、复合分区
对于分区表来说 , 数据倾斜的问题通常是最头疼的 。为了解决这个问题 , Oracle提供了复合分区的功能 。复合分区是先使用范围分区 , 然后在每个分区内再使用散列分区/列表分区的一种分区方法 。不过目前版本openGauss无法支持复合分区 。
postgres=# CREATE TABLE t_sub_partition
( dept_no number, country varchar2(20), sale_date date)
PARTITION BY RANGE(sale_date)
SUBPARTITION BY LIST(country)
( PARTITION q1_2012 VALUES LESS THAN('2012-Apr-01')
( SUBPARTITION q1_europe VALUES ('FRANCE', 'ITALY'),
SUBPARTITION q1_asia VALUES ('INDIA', 'PAKISTAN'),
SUBPARTITION q1_americas VALUES ('US', 'CANADA') ),
PARTITION q2_2012 VALUES LESS THAN('2012-Jul-01')
( SUBPARTITION q2_europe VALUES ('FRANCE', 'ITALY'),
SUBPARTITION q2_asia VALUES ('INDIA', 'PAKISTAN'),
SUBPARTITION q2_americas VALUES ('US', 'CANADA') ),
PARTITION q3_2012 VALUES LESS THAN('2012-Oct-01')
( SUBPARTITION q3_europe VALUES ('FRANCE', 'ITALY'),
SUBPARTITION q3_asia VALUES ('INDIA', 'PAKISTAN'),
SUBPARTITION q3_americas VALUES ('US', 'CANADA') ),
PARTITION q4_2012 VALUES LESS THAN('2013-Jan-01')
( SUBPARTITION q4_europe VALUES ('FRANCE', 'ITALY'),
SUBPARTITION q4_asia VALUES ('INDIA', 'PAKISTAN'),
SUBPARTITION q4_americas VALUES ('US', 'CANADA') ) );
ERROR: syntax error at or near "SUBPARTITION"
LINE 3: SUBPARTITION BY LIST(country)七、嵌套表
嵌套表类似C语言中的结构体 , 可以把一个表结构定义为一个类型 , 在创建其他表的时候 , 可以将字段类型指向这个自定义类型 。openGauss中可以通过create type进行嵌套表定义 。
postgres=# CREATE TYPE t_type AS (f1 int, f2 text);
CREATE TYPE
postgres=# CREATE TABLE t_compfoo(a int, b t_type);
CREATE TABLE总结
总体而言 , openGauss兼容Oracle常用表类型 , 索引组织表需要用集群索引方式进行改造 。对于少数非常用数据类型 , 需要进行少量代码改造 , 可采取下列替代方案进行替换 。
文章图片
文章图片
openGauss可替代Oracle吗?从字段类型说起……
推荐阅读
- 电池技术,相机发烧|防爆相机多少钱能买到?
- 行业互联网|深圳第22届高交会闭幕:一大批新技术新成果集中亮相
- 电池技术|动能转换看烟台|有锂电池的地方就有创为
- 行业互联网|2020十大新兴技术揭晓!每一项都可能颠覆我们的生活
- 行业互联网|英国运输技术论坛发布网络安全标准和指南摘要
- 钉科技|“选择性过滤”太难?方太“死磕”8年突破净水技术
- 中国新闻网|告别各自为营,梧桐车联宣布开放系统“技术底座”
- 腾讯|腾讯举办科学脱口秀X-Talk,聚焦人工智能、基因编辑等前沿技术
- |「推仔说新闻」NVIDIA曝光CPU+GPU加速技术 支持两家处理器
- 产业|清华教授魏少军:信息技术产业是全球GDP增长的主要动力