Mybatis-plus 高级查询Wrapper

查询条件

条件说明
allEq基于 map 的比较
eq等于 =
ne不等于 <>
gt大于 >
ge大于等于 >=
lt小于 <
le小于等于 <
betweenBETWEEN 值1 AND 值2
notBetweenNOT BETWEEN 值1 AND 值2
likeLIKE ‘%值%’
notLikeNOT LIKE ‘%值%’
likeLeftLIKE ‘%值’
likeRightLIKE ‘值%’
isNull字段 IS NULL
isNotNull字段 IS NOT NULL
in字段 IN (value1, value2, …)
notIn字段 NOT IN (value1, value2, …)
inSql字段 IN (sql 语句)
inSql(“age”, “1,2,3”) -> age in (1,2,3)
inSql(“id”, “select id from student where id < 3”) -> id in (select id from student where id < 3)
 
notInSql字段 NOT IN (sql 语句)
groupByGROUP BY 字段
orderByAsc升序 ORDER BY 字段, … ASC
orderByDesc降序 ORDER BY 字段, … DESC
orderBy自定义字段排序
orderBy(true, true, “id”, “name”) -> order by id ASC, name ASC
having条件分组
orOR 语句,拼接 + OR 字段=值
andAND 语句,拼接 + AND 字段=值
apply拼接 sql
last在 sql 语句后拼接自定义条件
exists拼接 EXISTS(sql语句)
exists(“selece id from student where age = 1”) -> exists(selece id from student where age = 1)
notExists拼接 NOT EXISTS(sql语句)
nested正常嵌套 不带 AND 或者 OR

例子: 

    QueryWrapper<ResultsrankEntity> wrapperList = new QueryWrapper<>();
        //取出同一个学校的同一个专业一样的放到一个列表里面
        wrapperList.eq("choosemajor",resultsrank.getChoosemajor());
        wrapperList.eq("chooseschool",resultsrank.getChooseschool());
        wrapperList.orderByDesc("sumnumber+0");
        List<ResultsrankEntity> choosemajorList =resultsrankDao.selectList(wrapperList);

注意排序数据库里面存储的是字符串类型的数字的话排序需要"+0"才好使,如上面代码

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Y_Hungry

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值