mybatis中foreach标签循环静态集合值

前言:由于业务功能特殊性,不需要传递变量来循环select,故将collection属性的值写为静态值来循环即可!

mybatis的xml代码如下:

复制代码
   <select id="qryIAccountHisListIotOld" resultType="com.ai.boss.busi.khzx.common.model.IAccountEntity"
            parameterType="java.util.Map">
        select *
        from (
        <foreach collection="{'0101','0102','0103','0104','0105','0106','0107','0108','0109','0110'}" item="item"
                 separator="  union all  ">
            select
            ACCT_ID,ACCT_NAME,ACCT_TYPE,CREDIT_CLASS,CREDIT,ACCT_VALUE,CUST_ID,ORG_ID,REGION_CODE,COUNTY_CODE,BEGIN_DATE,VALID_DATE,
            EXPIRE_DATE,SID,SO_NBR,REMARK,MAIN_SERV_ID,PAY_TYPE from ${tableName}${item} where ACCT_ID in
            (#{acctId}) AND
            valid_date <![CDATA[ < ]]>  to_date(#{expireDate},'yyyy-mm-dd hh24:mi:ss') and expire_date>
            to_date(#{validDate},'yyyy-mm-dd hh24:mi:ss')
        </foreach>
        )
        order by expire_date, ACCT_ID, SID
    </select>

其中

复制代码
collection="{'0101','0102','0103','0104','0105','0106','0107','0108','0109','0110'}"即为需要循环的静态值
相关推荐
万亿少女的梦1681 小时前
基于SpringBoot的在线考试管理系统设计与实现
java·spring boot·后端
一勺菠萝丶2 小时前
如何在 Linux 服务器上使用 Speedtest 官方 CLI 测试带宽(小白教程)
java·服务器·前端
范什么特西2 小时前
第一个Mybatis
java·开发语言·mybatis
下次再写2 小时前
【Redis实战】深入理解Redis缓存策略:从原理到Spring Boot实践
java·spring boot·redis·缓存穿透·缓存击穿·分布式缓存·缓存策略
超梦dasgg2 小时前
智慧充电系统计费定价服务Java 实现
java·开发语言·spring·微服务
敲敲千反田2 小时前
ThreadLocal和CompletableFuture
java·网络·jvm
码云数智-园园2 小时前
Spring循环依赖:三级缓存到底解决了什么,没解决什么?
java·后端·spring
龙亘川2 小时前
城市更新×智慧治理:老旧小区改造中的数字化创新实践
java·大数据·人工智能·机器学习·智慧城市
无所事事O_o2 小时前
OPENSSL生成非对称加密公私钥
java·加密
yaoxin5211232 小时前
401. Java 文件操作基础 - 使用 Buffered Stream I/O 写入文本文件
java·开发语言·python