最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

mybatis數(shù)據(jù)庫(kù)查詢的幾種常見方法

 更新時(shí)間:2026年01月14日 14:15:46   作者:memgLIFE  
本文介紹了幾種在MyBatis中進(jìn)行數(shù)據(jù)庫(kù)查詢的常見方法,包括使用OR條件查詢、FIND_IN_SET函數(shù)查詢逗號(hào)分隔的字符串、LIKE查詢進(jìn)行模糊匹配,以及使用JSON_OVERLAPS函數(shù)查詢數(shù)組,建議根據(jù)數(shù)據(jù)庫(kù)實(shí)際存儲(chǔ)格式選擇合適的查詢方法,感興趣的朋友跟隨小編一起看看吧

1、使用 OR 條件查詢 可以替換成SQL的IN條件(查詢多條記錄字段存一個(gè)值)

queryWrapper.and(!CollectionUtils.isEmpty(req.getWorkshopCodes()), wrapper -> {
            for (String paramType : req.getWorkshopCodes()) {
                wrapper.or().eq(DeviceShiftInfo::getWorkshopCode, paramType);
            }
        });
SQL:  (workshop_code = '測(cè)試1'	OR workshop_code = '測(cè)試2')
      queryWrapper.in(!CollectionUtils.isEmpty(req.getWorkshopCodes()),DeviceShiftInfo::getWorkshopCode,req.getWorkshopCodes())            
 SQ:workshop_code IN('測(cè)試1','測(cè)試2')

2、數(shù)據(jù)庫(kù)存的是逗號(hào)分隔的字符串(存的是測(cè)試1,測(cè)試2)查詢的值存在性

queryWrapper.and(!CollectionUtils.isEmpty(req.getWorkshopCodes()), wrapper -> {
            for (String paramType : req.getWorkshopCodes()) {
                wrapper.or()
                        .apply("FIND_IN_SET({0}, workshop_code)", paramType);
            }
        });
SQL:WHERE	((FIND_IN_SET('1', workshop_code) OR FIND_IN_SET('2', workshop_code)))

3、模糊查詢

queryWrapper.and(!CollectionUtils.isEmpty(req.getWorkshopCodes()), wrapper -> {
            for (String paramType : req.getWorkshopCodes()) {
                wrapper.or().like(DeviceShiftInfo::getWorkshopCode, paramType);
            }
        });
SQL: WHERE ((workshop_code LIKE '%1%' OR workshop_code LIKE '%2%'))

4、數(shù)據(jù)庫(kù)存的是數(shù)組
假如庫(kù)里存數(shù)組
JSON_OVERLAPS() 是 MySQL 8.0.17 及以上版本引入的一個(gè)函數(shù),用于判斷兩個(gè) JSON 文檔是否存在重疊(overlap)的元素。它常用于比較兩個(gè) JSON 數(shù)組是否包含至少一個(gè)相同的值

WHERE 	((JSON_OVERLAPS(remark,	'["1","2"]'))) 只要數(shù)據(jù)庫(kù)字段的數(shù)組存在查詢集合的值則就會(huì)被返回

建議:

  • 確認(rèn)數(shù)據(jù)庫(kù)實(shí)際存儲(chǔ)格式:先檢查數(shù)據(jù)庫(kù)字段的實(shí)際存儲(chǔ)值
  • 如果存的是單個(gè)值:用方法1(OR條件)
  • 如果存的是逗號(hào)分隔:用方法2(FIND_IN_SET)
  • 如果需要模糊匹配:用方法3(LIKE查詢)

到此這篇關(guān)于mybatis數(shù)據(jù)庫(kù)查詢的文章就介紹到這了,更多相關(guān)mybatis數(shù)據(jù)庫(kù)查詢內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • spring boot 項(xiàng)目中oracle datasource設(shè)置schema的問(wèn)題小結(jié)

    spring boot 項(xiàng)目中oracle datasource設(shè)置schema的問(wèn)題小結(jié)

    文章討論了在Spring Boot項(xiàng)目中使用Oracle數(shù)據(jù)庫(kù)時(shí),如何配置schema的問(wèn)題,討論了CORS配置問(wèn)題,提出了一種通過(guò)Nginx配置CORS的方案來(lái)解決該問(wèn)題,感興趣的朋友跟隨小編一起看看吧
    2026-05-05
  • SpringBoot參數(shù)驗(yàn)證的幾種方式小結(jié)

    SpringBoot參數(shù)驗(yàn)證的幾種方式小結(jié)

    在日常的接口開發(fā)中,為了防止非法參數(shù)對(duì)業(yè)務(wù)造成影響,經(jīng)常需要對(duì)接口的參數(shù)進(jìn)行校驗(yàn),例如登錄的時(shí)候需要校驗(yàn)用戶名和密碼是否為空,所以本文介紹了SpringBoot參數(shù)驗(yàn)證的幾種方式,需要的朋友可以參考下
    2024-07-07
  • 最新評(píng)論

    天台县| 三台县| 白城市| 禹城市| 温州市| 奉节县| 新闻| 都匀市| 盐城市| 寿宁县| 竹山县| 亚东县| 永和县| 宿州市| 嵊泗县| 溧水县| 阜新市| 汝阳县| 永宁县| 正定县| 尖扎县| 平山县| 米林县| 连平县| 凤冈县| 咸阳市| 临澧县| 常德市| 辽阳市| 宜川县| 大邑县| 淄博市| 东城区| 加查县| 青神县| 彰武县| 布拖县| 仁化县| 天门市| 万安县| 会宁县|