select *from 表名
where 1=1
${if(len(${x2})==0,"and to_char(scrq,'yyyymmdd')=to_char(add_months(to_date('${p2}','yyyymm'),1)-1,'yyyymmdd')","and to_char(scrq,'yyyymmdd')='${p2}${x2}'")}
AND (dw='合计') order by km asc
p2是文本框,X2是下拉框,这条语句错哪里了
${if(len(x2)==0,"and to_char(scrq,'yyyymmdd')=to_char(add_months(to_date('"+p2+"','yyyymm'),1)-1,'yyyymmdd')","and to_char(scrq,'yyyymmdd')='"+p2+x2+"'")}
if外已经有${},就不需要了,然后拼接就可以
${if(len(x2)==0,"and to_char(scrq,'yyyymmdd')=to_char(add_months(to_date('"+p2+"','yyyymm'),1)-1,'yyyymmdd')","and to_char(scrq,'yyyymmdd')='"+CONCATENATE(p2,x2)+"'")}