List<SpecialTesting> specialTestingFour = baseMapper.selectList(Wrappers.<SpecialTesting>query().lambda()
.in(SpecialTesting::getId, listId)); 

以上述Demo为例,如何查询parentCode为1~9的数据????

方式一:

List<SpecialTesting> specialTestingFour = baseMapper.selectList(Wrappers.<SpecialTesting>query().lambda()  
    .eq(SpecialTesting::getType, "parameter")  
    .in(SpecialTesting::getId, listId)  
    .or() // 开始or条件组  
    .eq(SpecialTesting::getParentCode, "1")  
    .or().eq(SpecialTesting::getParentCode, "2")  
    .or().eq(SpecialTesting::getParentCode, "3")  
    .or().eq(SpecialTesting::getParentCode, "4")  
    .or().eq(SpecialTesting::getParentCode, "5")  
    .or().eq(SpecialTesting::getParentCode, "6")  
    .or().eq(SpecialTesting::getParentCode, "7")  
    .or().eq(SpecialTesting::getParentCode, "8")  
    .or().eq(SpecialTesting::getParentCode, "9") 
);

方式二:

List<SpecialTesting> specialTestingFour = baseMapper.selectList(Wrappers.<SpecialTesting>query().lambda()  
    .eq(SpecialTesting::getType, "parameter")  
    .in(SpecialTesting::getId, listId)  
    .and(wrapper -> wrapper.between(SpecialTesting::getParentCode, 1, 9))
);

方式三:

List<SpecialTesting> specialTestingFour = baseMapper.selectList(Wrappers.<SpecialTesting>query().lambda()  
    .regexp(SpecialTesting::getParentCode, "^[1-9]$") 
);

请注意,我在上面的代码中使用了getCode()作为获取code字段值的方法。你需要确保SpecialTesting类中有这个方法,并且它返回的是String类型。如果code字段不是String类型,你可能需要进行类型转换。

另外,如果你的parentCode字段实际上是字符串类型,并且你想要匹配的是字符串"1"到"9",那么你的查询条件不需要改变。但是,如果parentCode字段是数值类型,并且你错误地将其与字符串"1"和"9"进行了比较,那么你需要修改查询条件以确保正确的类型匹配。

如果你的parentCode字段是字符串类型,并且你想要匹配的是以"1"到"9"开头的任何字符串(而不仅仅是单个字符),那么你可能需要使用like条件而不是between,但这取决于你的具体需求。

点赞(0) 打赏

评论列表 共有 0 条评论

暂无评论

微信公众账号

微信扫一扫加关注

发表
评论
返回
顶部