我现在的需求是,如果我当前登录人是admin,就执行sql1,否则执行sql2.
这现在是可以了的,还有一个问题就是,当我执行sql1的时候,如图二所示,我想要筛选名字,预览的时候默认是显示全部,筛选一个具体的时候,并没有生效,组件的名称和参数名称是一样的,这个应该怎么改,还需要改sql接受参数吗?
第一个红框里面的内容可以删掉,第二个红框的name前面加上sd.
你把sql1再拼接啊
${if(role='admin',"select * from 表 where 字段='"+参数名+"'","sql2")}
====================
${if(role='admin',"select * from 表 where 1=1 "+if(len(参数名)=0,""," and 字段='"+参数名+"'"),"sql2")}
sql没截全,简单的SQL应该会写吧。改日志级别后预览,在日志里面看SQL 缺什么加什么,SQL 中那一段不对改那一段
${IF(role='admin','','/*')}
SQL1
${IF(role='admin','','*/')}
${IF(role!='admin','','/*')}
SQL2
${IF(role!='admin','','*/')}
你可以这样写SQL,这样两边是互不影响的也可以分别测试