Что это значит

PostgreSQL не нашёл столбец с таким именем в таблицах запроса. Причины:

  • строковое значение записано в двойных кавычках: WHERE status = "Active" PostgreSQL читает как сравнение со столбцом Active; строки пишутся в одинарных кавычках;
  • столбец создан с заглавными буквами в кавычках, а запрос пишет имя без кавычек, и PostgreSQL ищет его в нижнем регистре;
  • столбца нет в этой версии схемы: запрос написан под другую версию приложения;
  • псевдоним из SELECT используется в WHERE, где он ещё не виден.

Как проверить

SELECT column_name FROM information_schema.columns
WHERE table_name = 'documents' ORDER BY ordinal_position;

Список покажет точные имена столбцов с учётом регистра.

Что сделать

  1. Строковые значения писать в одинарных кавычках.
  2. Имена с заглавными буквами писать в двойных кавычках ровно так, как они созданы.
  3. Если запрос из отчёта или скрипта под другую версию, привести его к текущей схеме.