假设 我有五个参数 带入到SQL中当作五个条件去查询,
如果没有查到数据则去掉一个我指定的条件,
如果还是没有查到则继续去掉一条件,以此类推,直到有结果返回
如何在一条SQL上实现这样的效果
一个有关SQL语句问题。。。
- 写回答
- 好问题 0 提建议
- 关注问题
- 邀请回答
-
3条回答 默认 最新
weixin_40852944 2019-08-13 15:49关注在条件前加 if判断;if(条件是否存在)(...)
select * from a where (a.条件1=#{con1} and a.条件2=#{con2} and a.条件3=#{con3} and a.条件4= #{con4} and a.条件5= #{con5}) or (a.条件1=#{con1} and a.条件2=#{con2} and a.条件3=#{con3} and a.条件4= #{con4}) or (a.条件1=#{con1} and a.条件2=#{con2} and a.条件3=#{con3}) or(a.条件1=#{con1} and a.条件2=#{con2}) or(a.条件1=#{con1})where 后面的条件利用for进行遍历拼接
解决 无用评论 打赏 举报