Мне нужно получить список ограничений из базы данных и сопоставить их со столбцами, к которым они относятся. Для этой задачи я собираюсь использовать pg_constraint. Вот запрос, который я использую
select conrelid::regclass AS table_from, conname, pg_get_constraintdef(c.oid)
from pg_constraint c
join pg_namespace n ON n.oid = c.connamespace
where conrelid::regclass::text = 'test' order by contype;
Как видите, меня интересуют ограничения для таблицы с именем test Вот вывод
table_from | conname | pg_get_constraintdef
------------+----------------+----------------------
test | test_age_check | CHECK ((age > 0))
Но Я хочу получить имя столбца для этого ограничения, используя запрос выше (в этом случае столбец age ). Согласно до c Column constraints are not treated specially
. Но, может быть, есть несколько способов, которыми я могу использовать для получения имени столбца из pg_constraint ?