Я не уверен, что есть более простой способ. Вы можете использовать information_schema, чтобы получить столбцы, а затем использовать их.
SELECT string_agg(column_name::character varying, ',') as columns
FROM information_schema.columns
WHERE table_schema = 'schema_name'
AND table_name = 'table_name'
Это вернет вам список столбцов в вашей таблице.
SELECT string_agg(column_name::character varying, ',') as columns
FROM information_schema.columns
WHERE table_schema = 'schema_name'
AND table_name = 'table_name' \gset
Вы можете обратиться к gset здесь ,
Например, если ваша таблица имеет два столбца 'a' и 'b', gset сохранит 'a, b '.
echo
можно использовать для проверки того, что gset сохранил,
\echo :columns
Следующий запрос может помочь вам,
select distinct :columns from table_name;