Ответ Клауса - самый полезный, за исключением небольшого промаха: вы
необходимо добавить DISTINCT в оператор выбора.
Однако, если вы уверены, что никакие таблицы + имена столбцов не могут быть эквивалентны
для двух разных таблиц вы также можете использовать:
select sequence_name, --PG_CLASS.relname, PG_ATTRIBUTE.attname
reset_sequence(split_part(sequence_name, '_id_seq',1))
from PG_CLASS
join PG_ATTRIBUTE on PG_ATTRIBUTE.attrelid = PG_CLASS.oid
join information_schema.sequences
on information_schema.sequences.sequence_name = PG_CLASS.relname || '_' || PG_ATTRIBUTE.attname
where sequence_schema='public';
, который является расширением решения user457226 для случая, когда
интересующее имя столбца не 'ID'.