Обнаружил это в другом потоке, который, похоже, поможет.
Amazon считает внутренние функции, которые INFORMATION_SCHEMA.COLUMNS использует только функции Leader-Node. Вместо того, чтобы быть разумным и пересмотреть стандартизированные INFORMATION_SCHEMA.COLUMNS, Amazon стремилась определить свою собственную проприетарную версию. Для этого они сделали доступной другую функцию PG_TABLE_DEF, которая, кажется, удовлетворяет ту же потребность. Обратите внимание на примечание в центре о добавлении схемы в search_path.
Хранит информацию о столбцах таблицы.
PG_TABLE_DEF возвращает только информацию о таблицах, которые видны пользователю. Если PG_TABLE_DEF не возвращает ожидаемых результатов, убедитесь, что параметр search_path установлен правильно и включает соответствующие схемы.
Вы можете использовать SVV_TABLE_INFO для просмотра более полной информации о таблице, включая перекос распределения данных, перекос распределения ключей , размер таблицы и статистика.
Итак, используя ваш пример кода (переписанный для использования НЕ СУЩЕСТВУЕТ для ясности),
SET SEARCH_PATH to '$user', 'public', 'target_schema';
SELECT "column"
FROM dev.fields f
WHERE NOT EXISTS (
SELECT 1
FROM PG_TABLE_DEF pgtd
WHERE pgtd.column = f.field
AND schemaname = 'target_schema'
);
См. также
Официальные документы по запросам Таблицы системы Redshift: https://docs.aws.amazon.com/redshift/latest/dg/t_querying_redshift_system_tables.html