怎么写$if

select*from a

where $if{}

想实现,b=='3' 显示全部

             b=='4' n_id=参数id

             b=='5' n_sjid=参数id

怎样写if?

FineReport yzm203888 发布于 2022-6-2 19:44
1min目标场景问卷 立即参与
回答问题
悬赏:3 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共3回答
最佳回答
0
15922204585Lv6高级互助
发布于2022-6-2 19:48

试试:

select * from a

where 1=1

${if(b='3',"",if(b='4',"and n_id = '"+参数id+"'","and n_sjid = '"+参数id+"'"))}

最佳回答
0
shirokoLv6资深互助
发布于2022-6-2 20:23

这个b是参数?参数id,合起来有两个参数吗?

最佳回答
0
好好生活好好学习Lv7资深互助
发布于2022-6-2 20:42

select*from a

where

1=1

${

switch(b,"3", "",

"4","and  n_id='"+参数id+"' ",

"5","and  n_sjid='"+参数id+"' "

)

}

多个值判断 switch清楚一点

  • 4关注人数
  • 582浏览人数
  • 最后回答于:2022-6-2 20:42
    请选择关闭问题的原因
    确定 取消
    返回顶部