想实现如果用户在 参数值id集合【1,2,3,4,5】中选择了1 或者2 或者同时选择1和2,则数据集返回sql1 否则返回sql2 应该怎么写呀?以下是我写的 会报错:
if (select id from table where id in(${id})) in(1,2)
sql1
else
sql2
where 1=1 ${if(find("1",id)>0||find("2",id)>0,"sql1","sql2")}
注意控件id返回字符串,如果返回的是数组,就把find改成inarray
---------------------------------------------
id返回数组:
${if(len(GREPARRAY(id,or(item==1,item==2)))==0&&len(id)>0,"sql1","sql2")}
${if(or(find(1,参数)>0,find(2,参数)>0),sql1,sql2)}
${if(and(or(find(1,参数)>0,find(2,参数)>0),or(find(3,参数)<=0,find(4,参数)<=0,find(5,参数)<=0)),sql1,sql2)}