MybatisPlus多條件?or()的使用問題小結(jié)
搞混了一次,特此筆記
1、bitCode or iotStr 跟其他ID一個都不能有重復(fù)
queryWrapper.ne(LineProductionPlan::getId,bean.getId());
queryWrapper.and(i -> i.eq(LineProductionPlan::getBitCode,bean.getBitCode()).or().eq(LineProductionPlan::getIotStr,bean.getIotStr()));打印sql

2、模糊查詢codeOrName變量匹配二個字段
queryWrapper.lambda().and(StrUtil.isNotEmpty(codeOrName), i -> i.like(Point::getName, codeOrName).or().like(Point::getBitCode, codeOrName));
擴(kuò)展:Mybatis-Plus中or()的使用避坑
1.連接 or()
當(dāng)需要簡單的將兩個條件或連接,則最直接的寫法為:
QueryWrapper<User> queryWrapper = new QueryWrapper<User>().
eq("status",0).
or().
eq("status",1);
//sql條件為 select * from user where status=0 or status=12.連接 or()
當(dāng)多個條件共同拼接,則最直接的寫法為: 要么把or()拼接放最前面,要么用queryWrapper.and(
qr.eq("status", 1).or().like("status", 2)),要不查詢的數(shù)據(jù)會有偏差,queryWrapper.and相當(dāng)于把兩個條件()一塊;
QueryWrapper<User> queryWrapper = new QueryWrapper<User>().
eq("status",0).
or().
eq("status",1)
eq("user_name","張三");
//sql條件為 select * from user where status=0 or status=1 and user_name='張三'
QueryWrapper<User> queryWrapper = new QueryWrapper<User>().
eq("user_name","張三").
eq("status",0).
or().
eq("status",1);
//sql條件為 select * from user where user_name='張三' and status=0 or status=1
查詢出來的數(shù)據(jù)和select * from user where status=0 or status=1 and user_name='張三' 不一致
QueryWrapper<User> queryWrapper = new QueryWrapper<User>().
eq("user_name","張三").and(q->q.eq("status",0).
or().
eq("status",1));
select * from user where select * from user where user_name='張三' and (status=0 or status=1 ) 查詢出來的數(shù)據(jù)和select * from user where status=0 or status=1 and user_name='張三' 一致到此這篇關(guān)于MybatisPlus多條件 or()的使用的文章就介紹到這了,更多相關(guān)MybatisPlus多條件 or()內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
MyBatis開發(fā)Dao層的兩種方式實現(xiàn)(原始Dao層開發(fā))
這篇文章主要介紹了MyBatis開發(fā)Dao層的兩種方式實現(xiàn)(原始Dao層開發(fā)),并對數(shù)據(jù)庫進(jìn)行增刪查改,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2018-12-12
SpringBoot讀取yml文件中配置數(shù)組的2種方法
這篇文章主要介紹了SpringBoot讀取yml文件中配置數(shù)組的2種方法,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2021-12-12
Jenkins?Pipline實現(xiàn)及原理示例解析
這篇文章主要為大家介紹了Jenkins?Pipline實現(xiàn)及原理示例解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-07-07
使用graalvm為帶有反射功能的java代碼生成native?image的示例詳解
graalvm讓native鏡像支持反射的關(guān)鍵是利用json提前告訴它哪些類的哪些方法會被反射調(diào)用,然后它就能力在運(yùn)行時支持反射了,這篇文章主要介紹了如何使用graalvm為帶有反射功能的java代碼生成native?image,需要的朋友可以參考下2024-02-02
Springboot整合GateWay+Nacos實現(xiàn)動態(tài)路由
本文主要介紹了Springboot整合GateWay+Nacos實現(xiàn)動態(tài)路由,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2024-08-08

