Mybatis-plus查詢語句加括號(.or(),.and())問題
更新時間:2025年04月21日 09:02:24 作者:葉梓啊
這篇文章主要介紹了Mybatis-plus查詢語句加括號(.or(),.and())問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
Mybatis-plus查詢語句加括號(.or(),.and())
java代碼
QueryWrapper<Entity> wrapper = new QueryWrapper<>();
wrapper.ne("id", param.getId())
wrapper.and(QueryWrapper -> QueryWrapper.eq("name", name).or().eq("mark", mark));
entityMapper.selectList(wrapper);等價sql
SELECT id FROM t_entity WHERE (id <> ? AND (name = ? OR mark = ?))
每個and相當于一個括號
mybatis plus加括號實現(xiàn)分端查詢
LambdaQueryWrapper<實體類> wrapper = new LambdaQueryWrapper<>();
- wrapper.eq(實體類::字段名,參數(shù))
- .and(條件,pr -> pr.like(實體類::字段名,參數(shù))
- .or(條件).like(實體類::字段名,參數(shù)));
舉例
LambdaQueryWrapper<Entity> lambdaQueryWrapper = new LambdaQueryWrapper();
lambdaQueryWrapper.eq(Entity::getStatus, BaseServiceConstants.STATUS_0)
.like(StringUtils.isNotEmpty(busiInfo.getName()) && !appFlag, Entity::getName, busiInfo.getName())
.like(StringUtils.isNotEmpty(busiInfo.getSupervisor()) && !appFlag, Entity::getSupervisor, busiInfo.getSupervisor())
.eq(StringUtils.isNotEmpty(busiInfo.getCode()), Entity::getCode, busiInfo.getCode())
.and(StringUtils.isNotEmpty(busiInfo.getName()) && appFlag, pr -> pr .like( Entity::getName, busiInfo.getName())
.or().like(Entity::getSupervisor, busiInfo.getName()));通過定義boolean變量 appFlag 來區(qū)別查詢來自PC還是APP端,APP端實現(xiàn)單一參數(shù)多對應查詢
總結(jié)
以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關文章
SpringBoot中Get請求和POST請求接收參數(shù)示例詳解
文章詳細介紹了SpringBoot中Get請求和POST請求的參數(shù)接收方式,包括方法形參接收參數(shù)、實體類接收參數(shù)、HttpServletRequest接收參數(shù)、@PathVariable接收參數(shù)、數(shù)組參數(shù)接收、集合參數(shù)接收、Map接收參數(shù)以及通過@RequestBody接收JSON格式的參數(shù),感興趣的朋友一起看看吧2024-12-12
SpringBoot?中使用?Validation?校驗參數(shù)的方法詳解
Validation?是用于檢查程序代碼中參數(shù)的有效性的框架,作為?Spring?框架中的一個參數(shù)校驗工具,集成在?spring-context?包中,這篇文章主要介紹了SpringBoot?中使用?Validation?校驗參數(shù),需要的朋友可以參考下2022-05-05
HTTP 415錯誤-Unsupported media type詳解
這篇文章主要介紹了HTTP 415錯誤-Unsupported media type詳解,本篇文章通過簡要的案例,講解了該項技術(shù)的了解與使用,以下就是詳細內(nèi)容,需要的朋友可以參考下2021-08-08
SpringBoot整合Redis之編寫RedisConfig
RedisConfig需要對redis提供的兩個Template的序列化配置,所以本文為大家詳細介紹了SpringBoot整合Redis如何編寫RedisConfig,需要的可以參考下2022-06-06
maven打包成第三方jar包且把pom依賴包打入進來的方法
這篇文章主要介紹了maven打包成第三方jar包且把pom依賴包打入進來的方法,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2018-11-11
SpringBoot整合任務系統(tǒng)quartz和SpringTask的方法
這篇文章主要介紹了SpringBoot整合任務系統(tǒng)(quartz和SpringTask),Quartz是一個比較成熟了的定時任務框架,但是捏,它稍微的有些許繁瑣,本文先給大家講解下Quartz的一些基本概念結(jié)合實例代碼給大家詳細講解,需要的朋友可以參考下2022-10-10

