Выполнить запрос на всех схемах Postgres

У нас есть более 100 схем, поддерживаемых в PostgreSQL. Теперь мы хотим запросить все схемы, есть ли способ сделать это? кроме взглядов, процедур и объединения всего? Любые функции postgres, которые позволяют запрашивать несколько схем

2 ответа

Следующий запрос каталога создаст действительные запросы для каждой таблицы во всех схемах вашей базы данных. Вы можете скопировать это в действительный файл SQL.

SELECT 'SELECT * FROM ' || table_schema || '.' || table_name || ';' AS query 
FROM information_schema.tables 
WHERE table_schema IN
(
    SELECT schema_name 
    FROM information_schema.schemata
    WHERE schema_name NOT LIKE 'pg_%' AND schema_name != 'information_schema'
);

Это помогает?

Используйте этот запрос

      set search_path = schema_name_1, schema_name_2, schema_name_3, schema_name_4;
SELECT * FROM table_1;
Другие вопросы по тегам