首页 > 解决方案 > 分别列出分区表名和分区名

问题描述

假设我创建了一个带有非分区表和分区表的数据库,其分区如下:

 Schema |      Name       |       Type        |     Owner
--------+-----------------+-------------------+---------------
 public | cust_arr_large  | table             | admin
 public | cust_arr_medium | table             | admin
 public | cust_arr_small  | table             | admin
 public | customers       | partitioned table | admin
 public | company         | table             | admin
 public | industry        | table             | admin

上表是该命令的显示\dt

companyindustry是没有分区的常规表。表customers是一个分区表cust_arr_largecust_arr_medium cust_arr_small是它的分区。

使用 SQL 命令,我该如何:

1 - 仅列出常规表和父分区表的名称(即companyindustrycustomers

2 - 仅列出分区(即cust_arr_smallcust_arr_mediumcust_arr_large

我正在寻找一种 SQL 语法,以便可以psycopg2在 Python 的脚本中使用它。我需要这些列表以在 Python 中进一步工作。

标签: sqlpostgresql

解决方案


\dPn如果这就是您要问的,则返回分区关系列表

此外,\dP仅列出分区表


推荐阅读