错误: 操作符不存在: integer = character varying 建议:没有匹配指定名称和参数类型的操作符. 您也许需要增加明确的类型转换.怎麽解決?

postgresql对变量类型比较敏感,对相应的变量进行类型转换之后就可以了

修改前:

<if test="lx !=null and lx.size>0 ">
AND t.lx in
<foreach collection="lx" item="lxItem" separator="," open="(" close=")">
#{lxItem}
</foreach>
</if>

修改后:

<if test="lx !=null and lx.size>0 ">
AND t.lx in
<foreach collection="lx" item="lxItem" separator="," open="(" close=")">
CAST(#{lxItem} AS SMALLINT)
</foreach>
</if>

posted @ 2022-10-05 23:28  华了个华  阅读(4047)  评论(2)    收藏  举报