DBAtlas · Атлас эксплуатации баз данных

42804: datatype_mismatch

PostgreSQL

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

Ожидаемый и переданный типы данных не совпадают. Например, присвоение столбцу значения неверного типа, ветви CASE, возвращающие разные типы, или ветви UNION с несогласованными типами.

Почему возникает?

Присваивание, несовместимое с типом столбца; ветви CASE/COALESCE, дающие разные типы; соответствующие столбцы в UNION разных типов; значение в RETURN, не соответствующее типу результата функции; не boolean там, где ожидается boolean.

Как исправить

Приведите выражение к правильному типу: value::integer или CAST(value AS numeric). Сделайте так, чтобы все ветви CASE возвращали один и тот же тип. В UNION согласуйте типы соответствующих столбцов с обеих сторон. Убедитесь, что условие WHERE даёт boolean.

Открыть в DBAtlas →

Ещё по этой СУБД