中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

mybatisplus?where?QueryWrapper怎么加括號嵌套查詢

發布時間:2022-01-11 13:38:18 來源:億速云 閱讀:1055 作者:iii 欄目:開發技術

這篇“mybatisplus where QueryWrapper怎么加括號嵌套查詢”文章的知識點大部分人都不太理解,所以小編給大家總結了以下內容,內容詳細,步驟清晰,具有一定的借鑒價值,希望大家閱讀完這篇文章能有所收獲,下面我們一起來看看這篇“mybatisplus where QueryWrapper怎么加括號嵌套查詢”文章吧。

where QueryWrapper加括號嵌套查詢

之前的代碼是這個樣子的:

QueryWrapper<RyxyMemberEntity> wrapper = new QueryWrapper<>();
    wrapper.eq("phoneNumber", phone);
    if (StringUtils.isEmpty(scenetype)){
            wrapper.isNull("scenetype").or().eq("scenetype", "");
    }
    wrapper.eq("delFlag", "0");

相對應的SQL語句如下:

WHERE( phoneNumber = 156****8888 AND scenetype IS NULL OR scenetype = "" AND delFlag = 0)

這并不是我想要的sql語句,查詢的數據也不正確,對scenetype的查詢應該是括起來的,滿足其一條件即可,也就是這樣:

WHERE( phoneNumber = 156****8888 AND (scenetype IS NULL OR scenetype = "") AND delFlag = 0)

相對應的代碼應該這樣寫才對:

QueryWrapper<RyxyMemberEntity> wrapper = new QueryWrapper<>();
    wrapper.eq("phoneNumber", phone);
    if(StringUtils.isEmpty(scenetype)) {
         wrapper.and(
              e -> e.isNull("scenetype")
                    .or().eq("scenetype", "")
         );
    }
    wrapper.eq("delFlag", "0");

mybatisplus查詢語句加括號(.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相當于一個括號

以上就是關于“mybatisplus where QueryWrapper怎么加括號嵌套查詢”這篇文章的內容,相信大家都有了一定的了解,希望小編分享的內容對大家有幫助,若想了解更多相關的知識內容,請關注億速云行業資訊頻道。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

衡水市| 临江市| 乌什县| 绥芬河市| 依兰县| 静宁县| 高台县| 庆元县| 盘锦市| 西乡县| 原阳县| 离岛区| 湖北省| 山丹县| 东乡| 额尔古纳市| 灯塔市| 黑河市| 新乡市| 蒙山县| 岳普湖县| 祁东县| 揭东县| 大姚县| 丹寨县| 凤庆县| 当阳市| 乐平市| 正镶白旗| 荃湾区| 海丰县| 抚远县| 涟水县| 搜索| 奎屯市| 海门市| 玉门市| 曲周县| 汝城县| 永平县| 南投县|