数据类型转换有点问题
select tmp.* from (
select (substring('5.0',1,1)::numeric(5,0))-3 as 名称
union all
select (substring(null,1,1)::numeric(5,0))-3 as 名称
) tmp
where tmp.名称>0
这样是不会报错的。如果帆软报错。那么替换一下驱动看看