DBAtlas · 데이터베이스 운영 아틀라스

42804: datatype_mismatch

PostgreSQL

의미

예상 데이터 타입과 제공된 데이터 타입이 일치하지 않는다. 예를 들어 컬럼에 잘못된 타입의 값을 할당하거나, CASE 분기가 서로 다른 타입을 반환하거나, UNION 분기의 타입이 맞지 않는 경우.

원인

컬럼 타입과 호환되지 않는 할당. CASE/COALESCE 분기가 서로 다른 타입을 생성. UNION의 대응 컬럼 타입이 다름. RETURN한 값이 함수의 반환 타입과 맞지 않음. boolean이 기대되는 곳에 boolean이 아닌 값.

해결 방법

표현식을 올바른 타입으로 캐스트한다: value::integer 또는 CAST(value AS numeric). 모든 CASE 분기가 같은 타입을 반환하게 한다. UNION에서는 양쪽 대응 컬럼의 타입을 맞춘다. WHERE 조건이 boolean을 산출하는지 확인한다.

DBAtlas에서 열기 →

같은 데이터베이스의 다른 항목