【批量】多条件批量查询语句

 

 

多条件批量查询语句 (这里是分表汇总成一个表进行查询,大家用不上多表,直接把多表替换成单表即可,主要看第二个《foreach的内容》)

xml

    <select id="getSameCarton" resultType="java.lang.Integer">
        select count(1)
        from
        (
        <foreach collection="qrTableList" item="qrTable" separator=" union all ">
            select * from ${qrTable}
        </foreach>
        ) t
        where
        1=1
        and
        <foreach collection="printQrList" item="qr" separator="or" open="(" close=")">
            purchase_order_no=#{qr.purchaseOrderNo}
            and
            purchase_order_line_number =
            #{qr.purchaseOrderLineNumber}
            and
            carton
            =#{qr.carton}
        </foreach>
    </select>

 

mapper.java

 

serviceImpl.java

 

补充:printQrList是一个  List<QrPrintTransferCommitVo>

 

 

最终效果: 将运行的sql从控制台,粘贴到数据库工具中运行,可以看到。

 

 

 

 

 

 

 

 


 

补充:

带  in 的查询

and wk.workshop_code in
        (
        ''
        <foreach collection="workshopCodeList" item="item" close="" open="," separator=",">
            #{item}
        </foreach>
        )

 

 

posted @ 2021-05-06 08:45  岁月尔尔  阅读(735)  评论(0编辑  收藏  举报