SELECT * FROM 表1 where 年份=case when '${月份}' =1 then '${年份}'-1 else '${年份}' endand 月份=case when '${月份}' =1 then 12 else '${月份}' -1 endunion all SELECT * FROM 表2 where 年份 ='${年份}'and 月份 ='${月份}'数据库中年份和月份都是int类型,表一需要选择上月的记录,表二需要当前月份的记录,这样写报错显示从数据类型 varchar 转换为 numeric 时出错,哪里错了呀?