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

mybatis分割字符串并循環(huán),實現(xiàn)in多個參數(shù)的操作

 更新時間:2021年06月10日 08:37:57   作者:思想永無止境  
這篇文章主要介紹了mybatis分割字符串并循環(huán),實現(xiàn)in多個參數(shù)的操作,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教

mybatis分割字符串并循環(huán),實現(xiàn)in多個參數(shù)

mybatis xml代碼:

  <select id="selectInXh" resultMap="BaseResultMap" parameterType="java.lang.String">
    select *
    from carinfo
    where
    xh in
 <if test="param1 != null and param1 != ''">
  <foreach item="item" index="index" collection="param1.split(',')" open="(" separator="," close=")">
   #{item}
  </foreach>
 </if>
  </select>

mybatis sql打?。?/p>

==>  Preparing: select * from carinfo where xh in ( ? , ? ) 
==> Parameters: 1(String), 2(String)

mybatis多參數(shù)使用方法且其中有的參數(shù)是多個值使用in查詢

1.當(dāng)只有一個參數(shù)時且參數(shù)類型是List

List<AnalysisInfo> listInfo(@Param("orderIds") List<Integer> orderIds);

我這里對參數(shù)重命名為"orderIds",所以下面foreach中collection="orderIds",如果未重命名則foreach中collection="list"

<select id="listInfo" resultType="com.ieou.retail.module.H5.dto.AnalysisInfo">
       select materials_name as materialsName,sum(num) as totalNum,
       sum(price) as totalSale
       from sales_order_detail
       where shipment_result = 'SUCCESS' and refunds_time is null
       and sales_order_id in
       <foreach collection="orderIds" index="index" item="item" open="(" separator="," close=")">
           #{item}
      </foreach>
      group by materials_id order by totalNum desc limit 5
  </select>

2. 當(dāng)只有一個參數(shù)時且參數(shù)類型是Array

List<AnalysisInfo> listInfo(Long[] orderIds);

如果參數(shù)類型是Array則collection屬性為array

<select id="listInfo" resultType="com.ieou.retail.module.H5.dto.AnalysisInfo">
       select materials_name as materialsName,sum(num) as totalNum,
       sum(price) as totalSale
       from sales_order_detail
       where shipment_result = 'SUCCESS' and refunds_time is null
       and sales_order_id in
       <foreach collection="array" index="index" item="item" open="(" separator="," close=")">
           #{item}
      </foreach>
      group by materials_id order by totalNum desc limit 5
  </select>

3.注意當(dāng)查詢的參數(shù)有多個時,例如

List<AnalysisInfo> listInfo(List<Integer> orderIds, Integer num);

這種情況下傳參要使用Map方式,這樣在collection屬性可以指定名稱

Map<String, Object> params = new HashMap<>();
params.put("orderIds",orderIds);
params.put("num",num);
List<AnalysisInfo> listInfo(params);

XML如下:

<select id="listInfo" resultType="com.ieou.retail.module.H5.dto.AnalysisInfo">
    select materials_name as materialsName,sum(num) as totalNum,
    sum(price) as totalSale
    from sales_order_detail
    where shipment_result = 'SUCCESS' and refunds_time is null and num = #{num}
    and sales_order_id in
    <foreach collection="orderIds" index="index" item="item" open="(" separator="," close=")">
        #{item}
    </foreach>
    group by materials_id order by totalNum desc limit 5
</select>

以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • 基于Java實現(xiàn)獲取本地IP地址和主機名

    基于Java實現(xiàn)獲取本地IP地址和主機名

    這篇文章主要介紹了基于Java實現(xiàn)獲取本地IP地址和主機名,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2020-05-05
  • java并發(fā)編程專題(九)----(JUC)淺析CyclicBarrier

    java并發(fā)編程專題(九)----(JUC)淺析CyclicBarrier

    這篇文章主要介紹了java CyclicBarrier的相關(guān)資料,文中示例代碼非常詳細,幫助大家更好的理解和學(xué)習(xí),感興趣的朋友可以了解下
    2020-07-07
  • rabbitmq消息ACK確認機制及發(fā)送失敗處理方式

    rabbitmq消息ACK確認機制及發(fā)送失敗處理方式

    這篇文章主要介紹了rabbitmq消息ACK確認機制及發(fā)送失敗處理方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2023-12-12
  • Java中JSONObject和Map<String,?Object>的轉(zhuǎn)換方法

    Java中JSONObject和Map<String,?Object>的轉(zhuǎn)換方法

    平時對接口時,經(jīng)常遇到j(luò)son字符串和map對象之間的交互,這篇文章主要給大家介紹了關(guān)于Java中JSONObject和Map<String,?Object>的轉(zhuǎn)換方法,文中通過代碼介紹的非常詳細,需要的朋友可以參考下
    2024-07-07
  • IntelliJ idea 如何生成動態(tài)的JSON字符串(步驟詳解)

    IntelliJ idea 如何生成動態(tài)的JSON字符串(步驟詳解)

    這篇文章主要介紹了IntelliJ idea 如何生成動態(tài)的JSON字符串,本文分步驟給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-08-08
  • Java CountDownLatch的源碼硬核解析

    Java CountDownLatch的源碼硬核解析

    對于并發(fā)執(zhí)行,Java中的CountDownLatch是一個重要的類。為了更好的理解CountDownLatch這個類,本文將通過例子和源碼帶領(lǐng)大家深入解析這個類的原理,感興趣的可以學(xué)習(xí)一下
    2022-10-10
  • Java獲取年月日(格式:xxxx年xx月xx日)的方法詳解

    Java獲取年月日(格式:xxxx年xx月xx日)的方法詳解

    在開發(fā)應(yīng)用程序時,經(jīng)常需要獲取當(dāng)前的年、月、日,并以特定格式進行展示或處理,本文將介紹如何獲取年月日,并將其格式化為“xxxx年xx月xx日”的形式,幫助你在應(yīng)用程序中處理日期信息,需要的朋友可以參考下
    2023-10-10
  • Java底層基于二叉搜索樹實現(xiàn)集合和映射/集合Set功能詳解

    Java底層基于二叉搜索樹實現(xiàn)集合和映射/集合Set功能詳解

    這篇文章主要介紹了Java底層基于二叉搜索樹實現(xiàn)集合和映射/集合Set功能,結(jié)合實例形式分析了Java使用二叉搜索樹實現(xiàn)集合和映射相關(guān)操作技巧,需要的朋友可以參考下
    2020-03-03
  • java @Data布爾值boolean的坑及解決

    java @Data布爾值boolean的坑及解決

    本文介紹了在使用Spring框架時,遇到的一個屬性命名規(guī)則問題,在Spring框架中,如果類的屬性名稱第一個字母小寫,第二個字母大寫,那么在調(diào)用set方法時,Spring會將屬性的后面的字母轉(zhuǎn)換為小寫,這種情況下,如果下游消費端調(diào)用得到的返回json串
    2024-10-10
  • Java的字符讀寫類CharArrayReader和CharArrayWriter使用示例

    Java的字符讀寫類CharArrayReader和CharArrayWriter使用示例

    這篇文章主要介紹了Java的字符讀寫類CharArrayReader和CharArrayWriter使用示例,兩個類分別繼承于Reader和Writer,需要的朋友可以參考下
    2016-06-06

最新評論

合川市| 曲阜市| 临武县| 新密市| 南郑县| 正定县| 苏尼特右旗| 彭泽县| 九龙坡区| 资阳市| 乐山市| 贵德县| 阳高县| 云霄县| 东阳市| 齐齐哈尔市| 界首市| 浑源县| 琼海市| 临澧县| 无锡市| 五原县| 略阳县| 竹山县| 凉城县| 永德县| 台江县| 德化县| 黔西| 苍梧县| 黑河市| 彩票| 昭平县| 新闻| 石首市| 米泉市| 通化县| 永平县| 阜城县| 淮南市| 钟山县|