mybatis中使用in查询时的注意事项
转自:http://www.cnblogs.com/xusir/archive/2013/07/24/3210286.html
1. 当查询的参数只有一个时
findByIds(List<Long> ids)
1.a 如果参数的类型是List, 则在使用时,collection属性要必须指定为 list
<select id="findByIdsMap" resultMap="BaseResultMap"> Select <include refid="Base_Column_List" /> from jria where ID in <foreach item="item" index="index" collection="list" open="(" separator="," close=")"> #{item} </foreach> </select>
findByIds(Long[] ids)
1.b 如果参数的类型是Array,则在使用时,collection属性要必须指定为 array
<select id="findByIdsMap" resultMap="BaseResultMap"> select <include refid="Base_Column_List" /> from jria where ID in <foreach item="item" index="index" collection="array" open="(" separator="," close=")"> #{item} </foreach> </select>
2. 当查询的参数有多个时,例如 findByIds(String name, Long[] ids)
这种情况需要特别注意,在传参数时,一定要改用Map方式, 这样在collection属性可以指定名称
下面是一个示例
Map<String, Object> params = new HashMap<String, Object>(2);params.put("name", name); params.put("ids", ids); mapper.findByIdsMap(params); <select id="findByIdsMap" resultMap="BaseResultMap"> select <include refid="Base_Column_List" /> from jria where ID in <foreach item="item" index="index" collection="ids" open="(" separator="," close=")"> #{item} </foreach> </select>
完整的示例如下:
例如有一个查询功能,Mapper接口文件定义如下方法:
List<Jria> findByIds(Long... ids);
使用 in 查询的sql拼装方法如下:
<select id="findbyIds" resultMap="BaseResultMap"> select <include refid="Base_Column_List" /> from jria where ID in <foreach item="item" index="index" collection="array" open="(" separator="," close=")"> #{item} </foreach> </select>
转载于:https://www.cnblogs.com/fsh1542115262/p/3887311.html
mybatis中使用in查询时的注意事项相关推荐
- mybatis 使用in 查询时报错_MyBatis(四):mybatis中使用in查询时的注意事项
packagecom.boco.jobmonitor.model;importjava.util.Date;importjavax.persistence.GeneratedValue;importj ...
- mybatis中的关联查询
mybatis中的关联查询 (尊重劳动成果,转载请注明出处:https://blog.csdn.net/qq_39778516/article/details/84191429 consistence ...
- 关于mybatis中的时间段查询
** 关于mybatis中的时间段查询 在最近的开发中使用比较频繁的一个点,咱就是说浅浅的记录一下!! 相信大家对于mybatis框架并不陌生,我使用它在开发过程中需要对一个时间段进行查询,前端设置的 ...
- 源码解读Mybatis List列表In查询实现的注意事项
http://www.blogjava.net/xmatthew/archive/2011/08/31/355879.html 在SQL开发过程中,动态构建In集合条件查询是比较常见的用法,在Myba ...
- MYBATIS 根据IN条件查询时,数据只查第一个的问题(字符串被截断......)
先说说我遇到的问题吧: 表student有如下数据, 我想查出来stu_id in (1,2,3)的数据 mybatis代码如下: 1 2 3 <SELECT id="queryMed ...
- mybatis中LIKE模糊查询的几种写法以及注意点(亲测第三种CONCAT()函数的)
mybatis中对于使用like来进行模糊查询的几种方式: (1)使用${...} 注意:由于$是参数直接注入的,导致这种写法,大括号里面不能注明jdbcType,不然会报错 org.mybatis. ...
- mybatis中LIKE模糊查询的几种写法以及注意点
From: https://blog.csdn.net/zhenwei1994/article/details/81876278 mybatis中对于使用like来进行模糊查询的几种方式: (1)使用 ...
- oracle中使用sql查询时字段为空则赋值默认
前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家.点击跳转到教程. oracle 通过 nvl( )函数sql 查询时为 空值 赋默认值 oracle 函数介绍之nvl ...
- oracle判断字段为空时选用别的字段_oracle中使用sql查询时字段为空则赋值默认
转至:http://www.th7.cn/db/Oracle/201501/86125.shtml oracle 通过 nvl( )函数sql 查询时为 空值 赋默认值 oracle 函数介绍之nvl ...
最新文章
- ibatis教程之调用带参数的存储过程
- BZOJ 2724蒲公英 (分块) 【内有块大小证明】
- vue判断a是否可点击_判断 a 和 b 里面元素是否一致:一致输出True,否则输出False...
- [UI] MFD UI kit
- SpringBoot 报错Field XXX required a bean of type XXX that could not be found.
- 计算机组成原理的基础知识,计算机组成原理:基础知识部分习题解答(学习笔记)...
- HDU 1159.Common Subsequence【动态规划DP】
- Spark Streaming的工作机制
- c51两个定时器中断冲突_STM32定时器与中断整理
- Django项目实践2 - Django模板(view-html)
- border和boder-radius
- 揭秘“菲住布渴”中运用的黑科技:除了check in、坐电梯、开门...全部刷脸之外,还有什么?
- PHP 该网页无法正常运作情况原因记录 code 500
- 数据库系统概念 - 数据模型,关系模型,关系,候选码,主码,外码
- 华为智慧屏和鸿蒙系统对比,鸿蒙系统初体验,华为智慧屏V65到底值不值得入手?...
- Bug:No artifacts configured
- 再见,南邮!别了,南京!
- mchain r语言_布林带交易策略R语言实现
- COGS 827. [Tyvj Feb11] 网站计划
- 中国大数据行业人才生态现状