mybatis拼接条件查询

mybatis拼接条件查询
方法1:
java代码:
// 会员编号
if(StringUtil.isNotEmpty(viewDo.getMemberId())){
 String memberId = viewDo.getMemberId().replaceAll("'", "");
if(memberId.indexOf(",") != -1){
 String[] arr = memberId.split(",");
 for (int i = 0; i < arr.length; i++) {
 if (i == 0) {
  spellMemberId.append("");
  }
 spellMemberId.append("'" + arr[i].trim() + "'");
 if (i != arr.length - 1) {
  spellMemberId.append(",");
      }
 if (i == arr.length - 1) {
 spellMemberId.append("");
      }
     }
 }else {
 spellMemberId.append("'" + memberId.trim() + "'");
             }
   }
或者
//大订单
if (StringUtil.isNotNullAndBlank(orderAuditDTO.getWtOrderInfoID())) {
 String orderInfoId=orderAuditDTO.getWtOrderInfoID().replaceAll("'", "");
 if(orderInfoId.indexOf(" or") != -1){
            String[] array = orderInfoId.split(" or");
 
         for (int i = 0; i < array.length; i++) {
         if (i == 0) {
           spellStrOfOrderId.append("( ");
       }
 
  spellStrOfOrderId.append(" t.WLT_ORDER_INFO_ID = '" + array[i].trim() + "' ");
     if (i != array.length - 1) {
                      spellStrOfOrderId.append(" or ");
      }
  if (i == array.length - 1) {
 spellStrOfOrderId.append(" )");
            }
             }

   } else {
         spellStrOfOrderId.append("( t.WLT_ORDER_INFO_ID=  '" + orderInfoId.trim() + "' )");
 }
    

xml代码:
<if test="memberId != null and memberId!=''" >
    and  mem.member_id in (${memberId})
</if>

方法2:

java代码:
第一步:if(StringUtils.isBlank(orderids)) throw new Exception("审核记录不能为空");
      String ids[]=orderids.split(",");
      Map<String,String> parm=new HashMap<String, String>();
      for(String i:ids){
       if(StringUtils.isNotBlank(i)){
        String s[]=i.split(":");
        parm.put(s[0], s[1]);
       }
      }
第二步:
List<String> ids=new ArrayList<String>();
Iterator<String> it=parm.keySet().iterator();
  while(it.hasNext()){
   ids.add(it.next());
  }
xml代码:

in
    <foreach item="item" index="index" collection="list" open="(" separator="," close=")">
         #{item}
   </foreach>

 

案例:

    <!-- 查询交易号       -->

    <select id="queryTxnNoBySubOrderId" parameterClass="java.util.List"

           resultClass="java.lang.String">

       select TXN_NO from wltdata.wlt_txn_order_rela

       <isPropertyAvailable property="subOrderIdList">

           <isNotNull property="subOrderIdList"

              prepend=" WHERE SUB_ORDER_INFO_ID in ">

              <iterate property="subOrderIdList" conjunction=","

                  close=")" open="(">

                  #subOrderIdList[]#

              </iterate>

           </isNotNull>

       </isPropertyAvailable>

    </select>

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值