Используя Postgres, есть ли способ перечислять таблицы, но не таблицы, являющиеся разделами других таблиц?
\dt
перечисляет все таблицы.У меня есть тысячи таблиц, которые не являются «первичными», а являются просто разделами родительских таблиц.
Это действительно отсутствующая функция в PostgreSQL, и вам нужно обратиться к каталогам, чтобы получить эту информацию:
SELECT relname, relnamespace::regnamespace::name AS schema FROM pg_catalog.pg_class WHERE relkind IN ('r', 'p') /* table or partitioned table */ AND relpartbound IS NULL /* exclude table partitions */;