MybatisPlus Wrapper方法


詳細見官方文檔:條件構造器 | MyBatis-Plus

拼接條件(where)的部分:

1.allEq
全部相等或者部分為空

allEq(鍵值的Map) //默認使用isNull方法
allEq(鍵值的Map, 是否使用isNull)

鍵值的Map: key為數據庫字段名,value為字段值
是否使用isNull: 為true則在map的value為null時調用isNull方法,為false時則忽略value為null的,即只匹配不是null的部分

2.eq
匹配與鍵值相等的數據

eq(鍵,值)

3.ne
匹配與鍵值不相等的數據

ne(鍵,值)

4.gt
匹配大於鍵值的數據

gt(鍵,值)

5.ge
匹配大於等於鍵值的數據

ge(鍵,值)

6.lt
匹配小於鍵值的數據

lt(鍵,值)

7.le
匹配小於等於鍵值的數據

le(鍵,值)

8.between
匹配區間內的數據 BETWEEN 值1 AND 值2

between(鍵,值1,值2)

9.notBetween
匹配區間外的數據 NOT BETWEEN 值1 AND 值2

notBetween(鍵,值1,值2)

10.like
模糊查詢 前后模糊 %值%

like(鍵,值)

11.notLike
排除值的模糊查詢

notLike(鍵,值)

12.likeLeft
模糊查詢 前模糊 %值

likeLeft(鍵,值)

13.likeRight
模糊查詢 后模糊 值%

likeRight(鍵,值)

14.isNull
匹配鍵值為空的數據

isNull(鍵,值)

15.isNotNull
匹配鍵值不為空的數據

isNotNull(鍵,值)

16.in
根據匹配的鍵值批量查詢

in(鍵,值的數組)
in(鍵,值1,值2,...)

17.notIn
根據不匹配的鍵值批量查詢

notIn(鍵,值的數組)
notIn(鍵,值1,值2,...)

18.inSql
子查詢

inSql(鍵,值)

例:

inSql("age", "1,2,3,4,5,6")--->age in (1,2,3,4,5,6)
inSql("id", "select id from table where id < 3")--->id in (select id from table where id < 3)

19.notInSql
子查詢 與inSql相反

notInSql(鍵,值)

例:

notInSql("age", "1,2,3,4,5,6")--->age not in (1,2,3,4,5,6)
notInSql("id", "select id from table where id < 3")--->id not in (select id from table where id < 3)

20.groupBy
分組查詢

groupBy(鍵1,鍵2,...)

21.orderByAsc
根據鍵值升序排列

orderByAsc(鍵1,鍵2,...)

22.orderByDesc
根據鍵值降序排列

orderByDesc(鍵1,鍵2,...)

23.having
在由GROUP BY子句創建的分組上設置條件

having(sql語句)
having(sql語句,條件1,條件2...)

例:

having("sum(age) > 10")--->having sum(age) > 10
having("sum(age) > {0}", 11)--->having sum(age) > 11

24.or
有兩種用法:
第一種表示連接方法采用or的形式,默認是and

or()

例:

eq().or().eq()

第二種表示or嵌套:
例:

or(i -> i.eq("name", "李白").ne("status", "活着"))--->or (name = '李白' and status <> '活着')

25.and
and嵌套
例:

and(i -> i.eq("name", "李白").ne("status", "活着"))--->and (name = '李白' and status <> '活着')

26.nested
正常嵌套不帶AND或者OR

nested(i -> i.eq("name", "李白").ne("status", "活着"))--->(name = '李白' and status <> '活着')

27.apply
拼接sql

apply(sql語句,參數1,參數2)

例:

apply("date_format(dateColumn,'%Y-%m-%d') = {0}", "2008-08-08")--->date_format(dateColumn,'%Y-%m-%d') = '2008-08-08'")

28.last
無視優化規則直接拼接到 sql 的最后
只能調用一次,多次調用以最后一次為准

last(sql語句)

29.exists
拼接 EXISTS ( sql語句 )

exists(sql語句)

30.notExists
拼接 NOT EXISTS ( sql語句 )

notExists(sql語句)

拼接查詢(select)的部分:

select

select(查詢的鍵1,查詢的鍵2...)

例:

select("id", "name", "age")

拼接更新(update)的部分:
1.set

set(鍵,值)

2.setSql

setSql(sql語句)

轉載:
https://allyixi.blog.csdn.net/article/details/106603783?spm=1001.2101.3001.6650.1&utm_medium=distribute.pc_relevant.none-task-blog-2%7Edefault%7ECTRLIST%7Edefault-1.no_search_link&depth_1-utm_source=distribute.pc_relevant.none-task-blog-2%7Edefault%7ECTRLIST%7Edefault-1.no_search_link


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM