MyBatis-Plus QueryWapper 满足多个条件Or另一个条件
在按照风险等级查询时需要判断(D值>=160且
·
业务场景
数据库两个字段 D 和 RiskGrade
在按照风险等级查询时需要判断 (D值>=160且<320)或(RiskGrade=48)
在sql中会根据()来进行条件的区分
QueryWapper怎么用呢
错误示范
这样后面在拼接其他条件所查询出的数据和所想象的并不一样
new QueryWapper().ge("d",160).lt("d",320).OR.eq("riskGrade",64)
正确用法
用到qwerywapper自带的 and嵌套
这样拼接出的sql会带上()
/**
* AND 嵌套
* <p>
* 例: and(i -> i.eq("name", "李白").ne("status", "活着"))
* </p>
*
* @param condition 执行条件
* @param consumer 消费函数
* @return children
*/
Children and(boolean condition, Consumer<Param> consumer);
ledgerHazardGridRelationTwoQueryWrapper.and(wrapper -> wrapper.lt("value_at_risk_d", 320).ge("value_at_risk_d", 160)
.or().eq("risk_grade", RISK_GRADE_LOW));
更多推荐
已为社区贡献1条内容
所有评论(0)