PolarDB PostgreSQL版(兼容Oracle)提供五个系统目录视图,您可以使用这五个系统目录视图来查看分区表的具体信息。
查询分区表视图
PolarDB PostgreSQL版(兼容Oracle)提供了如下两种方式查询分区表视图:
- 使用SELECT命令
查询方式如下:
SELECT * FROM viewname; - 使用PSQL客户端
查询命令如下:
\d viewname
其中viwename为视图名称,您可以通过以下视图查询分区和子分区信息:
ALL_PART_TABLES
ALL_PART_TABLES视图提供当前数据库中的所有分区表的信息。
| 名称 | 类型 | 说明 |
|---|---|---|
| owner | TEXT | 分区表的所有者。 |
| schema_name | TEXT | 表所在 schema 的名称。 |
| table_name | TEXT | 表的名称。 |
| partitioning_type | TEXT | 用于定义表分区的分区类型。 |
| subpartitioning_type | TEXT | 用于定义表二级分区的二级分区类型。 |
| partition_count | BIGINT | 表中分区的数量。 |
| def_subpartition_count | INTEGER | 表中二级分区的数量。 |
| partitioning_key_count | INTEGER | 指定的分区键的数量。 |
| subpartitioning_key_count | INTEGER | 指定的二级分区键的数量。 |
| status | CHARACTER VARYING(8) | 仅为了实现兼容性而提供。始终为 VALID。 |
| def_tablespace_name | CHARACTER VARYING(30) | 仅为了实现兼容性而提供。始终为 NULL。 |
| def_pct_free | NUMERIC | 仅为了实现兼容性而提供。始终为 NULL。 |
| def_pct_used | NUMERIC | 仅为了实现兼容性而提供。始终为 NULL。 |
| def_ini_trans | NUMERIC | 仅为了实现兼容性而提供。始终为 NULL。 |
| def_max_trans | NUMERIC | 仅为了实现兼容性而提供。始终为 NULL。 |
| def_initial_extent | CHARACTER VARYING(40) | 仅为了实现兼容性而提供。始终为 NULL。 |
| Def_next_extent | CHARACTER VARYING(40) | 仅为了实现兼容性而提供。始终为 NULL。 |
| def_min_extents | CHARACTER VARYING(40) | 仅为了实现兼容性而提供。始终为 NULL。 |
| def_max_extents | CHARACTER VARYING(40) | 仅为了实现兼容性而提供。始终为 NULL。 |
| def_pct_increase | CHARACTER VARYING(40) | 仅为了实现兼容性而提供。始终为 NULL。 |
| def_freelists | NUMERIC | 仅为了实现兼容性而提供。始终为 NULL。 |
| def_freelist_groups | NUMERIC | 仅为了实现兼容性而提供。始终为 NULL。 |
| def_logging | CHARACTER VARYING(7) | 仅为了实现兼容性而提供。始终为 YES。 |
| def_compression | CHARACTER VARYING(8) | 仅为了实现兼容性而提供。始终为 NONE。 |
| def_buffer_pool | CHARACTER VARYING(7) | 仅为了实现兼容性而提供。始终为 DEFAULT。 |
| ref_ptn_constraint_name | CHARACTER VARYING(30) | 仅为了实现兼容性而提供。始终为 NULL。 |
| interval | CHARACTER VARYING(1000) | 仅为了实现兼容性而提供。始终为 NULL。 |
ALL_TAB_PARTITIONS
ALL_TAB_PARTITIONS视图提供当前数据库中的所有分区的信息。
| 名称 | 类型 | 说明 |
|---|---|---|
| table_owner | TEXT | 分区所在表的所有者。 |
| schema_name | TEXT | 表所在 schema 的名称。 |
| table_name | TEXT | 表的名称。 |
| composite | TEXT |
|
| partition_name | TEXT | 分区的名称。 |
| subpartition_count | BIGINT | 分区中二级分区的数量。 |
| high_value | TEXT | CREATE TABLE 语句中指定的高分区值。 |
| high_value_length | INTEGER | 分区值的长度。 |
| partition_position | INTEGER | 仅为了实现兼容性而提供;始终为 NULL。 |
| tablespace_name | TEXT | 分区所在的表空间的名称。 |
| pct_free | NUMERIC | 仅为了实现兼容性而提供;始终为 0。 |
| pct_used | NUMERIC | 仅为了实现兼容性而提供;始终为 0。 |
| ini_trans | NUMERIC | 仅为了实现兼容性而提供;始终为 0。 |
| max_trans | NUMERIC | 仅为了实现兼容性而提供;始终为 0。 |
| initial_extent | NUMERIC | 仅为了实现兼容性而提供;始终为 NULL。 |
| next_extent | NUMERIC | 仅为了实现兼容性而提供;始终为 NULL。 |
| min_extent | NUMERIC | 仅为了实现兼容性而提供;始终为 0。 |
| max_extent | NUMERIC | 仅为了实现兼容性而提供;始终为 0。 |
| pct_increase | NUMERIC | 仅为了实现兼容性而提供;始终为 0。 |
| freelists | NUMERIC | 仅为了实现兼容性而提供;始终为 NULL。 |
| freelist_groups | NUMERIC | 仅为了实现兼容性而提供;始终为 NULL。 |
| logging | CHARACTER VARYING(7) | 仅为了实现兼容性而提供;始终为 YES。 |
| compression | CHARACTER VARYING(8) | 仅为了实现兼容性而提供;始终为 NONE。 |
| num_rows | NUMERIC | 与 pg_class.reltuples 相同。 |
| blocks | INTEGER | 与 pg_class.relpages 相同。 |
| empty_blocks | NUMERIC | 仅为了实现兼容性而提供;始终为 NULL。 |
| avg_space | NUMERIC | 仅为了实现兼容性而提供;始终为 NULL。 |
| chain_cnt | NUMERIC | 仅为了实现兼容性而提供;始终为 NULL。 |
| avg_row_len | NUMERIC | 仅为了实现兼容性而提供;始终为 NULL。 |
| sample_size | NUMERIC | 仅为了实现兼容性而提供;始终为 NULL。 |
| last_analyzed | TIMESTAMP WITHOUT TIME ZONE | 仅为了实现兼容性而提供;始终为 NULL。 |
| buffer_pool | CHARACTER VARYING(7) | 仅为了实现兼容性而提供;始终为 NULL。 |
| global_stats | CHARACTER VARYING(3) | 仅为了实现兼容性而提供;始终为 YES。 |
| user_stats | CHARACTER VARYING(3) | 仅为了实现兼容性而提供;始终为 NO。 |
| backing_table | REGCLASS | 分区备份表的名称。 |
ALL_TAB_SUBPARTITIONS
ALL_TAB_SUBPARTITIONS视图提供当前数据库中的所有子分区的信息。
| 名称 | 类型 | 说明 |
|---|---|---|
| table_owner | TEXT | 二级分区所在表的所有者。 |
| schema_name | TEXT | 表所在 schema 的名称。 |
| table_name | TEXT | 表的名称。 |
| partition_name | TEXT | 分区的名称。 |
| subpartition_name | TEXT | 二级分区的名称。 |
| high_value | TEXT | CREATE TABLE 语句中指定的高二级分区值。 |
| high_value_length | INTEGER | 二级分区值的长度。 |
| subpartition_position | INTEGER | 仅为了实现兼容性而提供;始终为 NULL |
| tablespace_name | TEXT | 二级分区所在的表空间的名称。 |
| pct_free | NUMERIC | 仅为了实现兼容性而提供;始终为 0。 |
| pct_used | NUMERIC | 仅为了实现兼容性而提供;始终为 0。 |
| ini_trans | NUMERIC | 仅为了实现兼容性而提供;始终为 0。 |
| max_trans | NUMERIC | 仅为了实现兼容性而提供;始终为 0。 |
| initial_extent | NUMERIC | 仅为了实现兼容性而提供;始终为 NULL。 |
| next_extent | NUMERIC | 仅为了实现兼容性而提供;始终为 NULL。 |
| min_extent | NUMERIC | 仅为了实现兼容性而提供;始终为 0。 |
| max_extent | NUMERIC | 仅为了实现兼容性而提供;始终为 0。 |
| pct_increase | NUMERIC | 仅为了实现兼容性而提供;始终为 0。 |
| freelists | NUMERIC | 仅为了实现兼容性而提供;始终为 NULL。 |
| freelist_groups | NUMERIC | 仅为了实现兼容性而提供;始终为 NULL。 |
| logging | CHARACTER VARYING(7) | 仅为了实现兼容性而提供;始终为 YES。 |
| compression | CHARACTER VARYING(8) | 仅为了实现兼容性而提供;始终为 NONE。 |
| num_rows | NUMERIC | 与 pg_class.reltuples 相同。 |
| blocks | INTEGER | 与 pg_class.relpages 相同。 |
| empty_blocks | NUMERIC | 仅为了实现兼容性而提供;始终为 NULL。 |
| avg_space | NUMERIC | 仅为了实现兼容性而提供;始终为 NULL。 |
| chain_cnt | NUMERIC | 仅为了实现兼容性而提供;始终为 NULL。 |
| avg_row_len | NUMERIC | 仅为了实现兼容性而提供;始终为 NULL。 |
| sample_size | NUMERIC | 仅为了实现兼容性而提供;始终为 NULL。 |
| last_analyzed | TIMESTAMP WITHOUT TIME ZONE | 仅为了实现兼容性而提供;始终为 NULL。 |
| buffer_pool | CHARACTER VARYING(7) | 仅为了实现兼容性而提供;始终为 NULL。 |
| global_stats | CHARACTER VARYING(3) | 仅为了实现兼容性而提供;始终为 YES。 |
| user_stats | CHARACTER VARYING(3) | 仅为了实现兼容性而提供;始终为 NO。 |
| backing_table | REGCLASS | 二级分区备份表的名称。 |
ALL_PART_KEY_COLUMNS
ALL_PART_KEY_COLUMNS视图提供当前数据库中分区键列的信息。
| 名称 | 类型 | 说明 |
|---|---|---|
| owner | TEXT | 表的所有者。 |
| schema_name | TEXT | 表所在 schema 的名称。 |
| name | TEXT | 列所在表的名称。 |
| object_type | CHARACTER(5) | 仅为了实现兼容性;始终为 TABLE。 |
| column_name | TEXT | 定义键的列的名称。 |
| column_position | INTEGER | 1 表示第一列;2 表示第二列,以此类推。 |
ALL_SUBPART_KEY_COLUMNS
ALL_SUBPART_KEY_COLUMNS视图提供当前数据库中子分区键列的信息。
| 名称 | 类型 | 说明 |
|---|---|---|
| owner | TEXT | 表的所有者。 |
| schema_name | TEXT | 表所在 schema 的名称。 |
| name | TEXT | 列所在表的名称。 |
| object_type | CHARACTER(5) | 仅为了实现兼容性;始终为 TABLE。 |
| column_name | TEXT | 定义键的列的名称。 |
| column_position | INTEGER | 1 表示第一列;2 表示第二列,以此类推。 |