2021-10-11
有没有办法可以在where 中动态写条件,就是加个判断,如果满足条件一则执行where 1否则执行 where 2
有没有办法可以在where 中动态写条件,就是加个判断,如果满足条件一则执行where 1否则执行 where 2
我来答
添加附件
收藏
分享
问题补充
4条回答
默认
最新
回答交流
Markdown
请输入正文
提交
问题信息
请登录之后查看
邀请回答
暂无人订阅该标签,敬请期待~~

有没有办法可以在where 中动态写条件,就是加个判断,如果满足条件一则执行where 1否则执行 where 2
这种要在SQL之前判断。不是再where后面判断。
case when啊 case when是可以写在where里面的
这种拼SQL是好的方式吧。
有种情况是可以动态的
比如
select * from t where field = case when 1=1 then 'aaa' else 'bbb' end
听上去很复杂,其实是自己把自己搞复杂了,一个or就完了
where (条件1 and where1 ) or (not 条件1 and where 2 )