Mybatis union 循环
<foreach collection="nameList" item="name" separator="union">
select id from table where name = #{name}
</foreach>
List<Object> getList(@Param("nameList")String[] nameList);
Mybatis union 循环 <foreach collection="nameList" item="name" separator="union"> select id from table where name = #{name} </foreach> List<Object> getList(@Param("nameList")String[] nameList);
如果为空,根据这个表的另外一个字段查询,用union连接对结果去重即可
<select id="selectByNull" resultMap="BaseResultMap">
SELECT DISTINCT b.SAMPLE_NO,
b.ID,
b.SPECIMEN_ID,
b.RECEIVE...
<select id="selectAllReportByPage" resultMap="BaseResultMap">
<if test="params.type != null and params.type!='' and params.type==1 ">
select id,name,1 as idx,
CONCAT(LEFT(id_no,3), '***...
<select id="find" parameterType="java.util.Map" resultType="java.util.LinkedHashMap">
<choose>
<when test="type !=null and type !=''">
<if test='type =="0"'>
SELECT u.USER...
<select id="getProductEnableNumberInfos" resultMap="productMap" >
SELECT CDSK_ITEM_CODE ProductCode,WMST_SKU_UNIT ProductUnit,WMST_ENABLED_NUMBER ProductNum from (
<foreach collection="conditions.list" item="item" index="index" separator.
com.mysql.cj.exceptions.DataConversionException Caused by: java.sql.SQLDataException: Cannot determine value type from string
解决方案: 字段名称为name, 改为其它即可。
在MyBatis中,可以使用foreach方法或in关键字来实现循环union操作。使用foreach方法时,可以将需要循环的数据放入一个集合中,然后在SQL语句中使用foreach标签进行遍历。例如,可以使用以下代码实现循环union操作:
```xml
SELECT plan_id FROM push_plan WHERE 1=0
UNION DISTINCT
<if test="tags != null">
<foreach item="item" index="index" collection="tags" open="SELECT plan_id FROM push_plan WHERE tag LIKE CONCAT('%',#{item},'%') UNION DISTINCT" separator=" UNION DISTINCT" close=""></foreach>
SELECT plan_id FROM push_plan WHERE 1=0
这段代码首先查询一个空的结果集,然后使用foreach标签循环遍历tags集合,在每次循环中拼接一个union查询语句。最后,再查询一个空的结果集,以保证语法的正确性。这样就可以实现循环union操作。\[1\]\[2\]
#### 引用[.reference_title]
- *1* *2* [Mybatis循环处理 like](https://blog.csdn.net/m0_67401153/article/details/126465811)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item]
[ .reference_list ]