关于sql语句if条件中加参数的问题

各位大神好 我现在有个需求是根据选择的省市县去合计两个数值,如果只选择省这个参数就按照省为单位合计,选择省和市就按照省+市来合计,省市县都选择的话,合计维度精确到县。代码中在where语句里面做了多选的限制,用的in 但是关于市和县这里做限制的时候代码写上就报错。。。求大神帮忙看看问题所在。。谢谢
代码如下:
select ${if(len(省)=0,"","sheng")}
${if(len(市)=0,"",",shi")}
${if(len(县)=0,"",",xian")},
sum(hryongliang),
sum(mzyl) from(select (select enum_item.showvalue from ctp_enum_item enum_item where enum_item.id = formmain_3840.field0001) sheng, field0002 shi,field0003 xian,field0008 mzyl,field0041 hryongliang from formmain_3840)
where 1=1 and sheng in('${省}')
${if(len(市)=0,"","and shi in ('${市}')")}-------------------------------------------------这两行写上就报错
${if(len(县)=0,"","and xian in ('${县}')")}-----------------------------------------------这两行写上就报错
group by
${if(len(省)=0,"","sheng")}
${if(len(市)=0,"",",shi")}
${if(len(县)=0,"",",xian")}

FineReportTCNicky 发布于 2017-10-27 15:40
悬赏:2 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共2回答
最佳回答
0
星痕发布于2017-10-27 15:40(编辑于 2023-9-6 09:34)
555
  • 0关注人数
  • 3326浏览人数
  • 最后回答于:2017-10-27 15:47
    活动推荐 更多
    热门课程 更多
    返回顶部