mybatis plus or and 的合并写法实例

2021-02-03 16:42:32 IT技术网 互联网
浏览

我就废话不多说了,大家还是直接看代码吧~

int count =hrDeliverEmployContractService.selectCount(new EntityWrapper<HrDeliverEmployContractEntity>()
.eq("pool_id",hrDeliverEmployContract.getPoolId()).andNew().lt("contract_start_date",hrDeliverEmployContract.getContractStartDate()).or().gt("contract_end_date",hrDeliverEmployContract.getContractEndDate()) );

对应的SQL

SELECT COUNT(1)
FROM hr_deliver_employ_contract
WHERE (pool_id = 1) AND (contract_start_date < '2018-07-01 00:00:00.0' OR contract_end_date > '2018-10-31 00:00:00.0');
 

补充:mybatis plus or使用

QueryWrapper queryWrapper = new QueryWrapper();
queryWrapper .and(wrapper -> wrapper.isNull(“sim”).or().eq(“sim”, “”));
queryWrapper .eq(“is_delete”, “0”);

对应sql语句

select * from vehicle where (sim is null or sim='') and is_delete=‘0'
QueryWrapper queryWrapper = new QueryWrapper();
queryWrapper .eq(“name”,“测试”).or().eq(“sim”,“2”);

对应sql语句

select * from vehicle where name=‘测试' or sim=‘2'

以上为个人经验,希望能给大家一个参考,也希望大家多多支持IT技术网。如有错误或未考虑完全的地方,望不吝赐教。

您可能感兴趣的文章:

  • MyBatis XML去除多余AND|OR前缀或逗号等后缀的操作
  • 关于MyBatis Plus中使用or和and问题
  • mybatis and,or复合查询操作
  • MyBatisPlus中使用or()和and()遇到的问题及细节处理
  • 解决mybatis where-if中if不能识别大写AND,OR的问题