错误:COALESCE类型在PostgreSQL中输入bytea和字符

Lov*_*eTW 4 java postgresql hibernate coalesce

name1用Spring + Hibernate 编写了一个postgresql并从我的java代码中传递参数.

SELECT * FROM Test
WHERE name = COALESCE(:name1, name2)
Run Code Online (Sandbox Code Playgroud)

但是我得到了一个错误

ERROR: COALESCE types bytea and character varying
Run Code Online (Sandbox Code Playgroud)

name1我的java代码中的String 类型.

我试图解决这个问题

COALESCE(convert_from(:name1,'UTF8'), name2)
Run Code Online (Sandbox Code Playgroud)

它将在Eclipse中通过JUNIT Test.但是,当我在Tomcat上运行它时,我会收到错误

Error:convert_from(character varying, unknown) not exist
Run Code Online (Sandbox Code Playgroud)

怎么解决?谢谢.

Lov*_*eTW 6

我已经解决了我的问题.

SELECT * FROM Test
WHERE name = COALESCE(CAST(:name1 AS TEXT), name2)
Run Code Online (Sandbox Code Playgroud)

感谢Erwin Brandstetter给我的建议.