mybatis如何实现多条件的in批量删除。 10C

这个是但条件查询。
图片说明
但是我想做到的是这种的sql语句。应该怎样传递参数,如何写。
图片说明

0

8个回答

delete from table where id in (select id from tab where name in (#{name}) and .....)

0

select * from MD_RES_CAPACITIES WHERE sid in #{sidsItem}and version in #{versionItem}

0

例子:
public Capacities selectMdResCapatities(@Param("sids")ArrayList sids, @Param("versions")ArrayList versions);

xml配置这样写:


SELECT * FROM MD_RES_CAPACITIES a
    where
a.sid in
separator="," close=")">
#{item}

and a.version in
separator="," close=")">
#{item}

试一下吧 或许可以

0

图片说明

这个sql写上去不一样,给你上图

0

使用注解传多个参数,或者使用Map,实体之类,以下是使用注解方式,比较好理解
对应java代码:

 public int deleteAllByPrimaryKey(@Param("sidList")List<Integer> sidList,@Param("versionList")List<Integer> versionList);

xml代码:

 <delete id="deleteAllByPrimaryKey">
    delete from MD_RES_CAPACITIES where
    SID in
    <foreach item="sidsitem" collection="sidList" open="(" separator="," close=")">
        ${sidsitem}
    </foreach>
    and version in
    <foreach item="versionsitem" collection="versionList" open="(" separator="," close=")">
        ${versionsitem}
    </foreach>
</delete>
0
r562253897
独家de记忆 #{}才对,不好意思,最近在做别的项目,搞忘记了。
一年多之前 回复
weixin_37536580
weixin_37536580 使用${}还是#{}
一年多之前 回复

mybatis实现多条件参数,你可以Java代码中传一个数组或者list或者map,这些都可以的,只是配置不一样,你可以参考http://blog.csdn.net/aiyawalie/article/details/52954138

0

看了你想要最终实现的sql样子,不建议用mybatis的循环,建议你在外部把in部分的参数直接根据你的需求拼接好传递进去。

0

select * from MD_RES_CAPACITIES WHERE sid in #{sidsItem} and version in #{versionItem}

-2
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
mybatis多条件批量删除
delete from md_prsnl_ent     where (PRSNLID,ENTID) in      (#{item.prsnlid},#{item.entid})
mybatis针对Oracle数据库进行(单个或多个条件)批量操作(新增、修改、删除)的sql写法--mysql
1、批量新增:   insert into TB_DUTY select SEQ_TB_DUTY.nextval,A.* from( SELECT #{item.dscd}, #{item.unitId},#{item.year},#{item.month},#{item.day},#{item.weekDay}, #{item.mor
mybatis针对Oracle数据库进行(单个或多个条件)批量操作(新增、修改、删除)的sql写法--mysql...
[b]1、批量新增:[/b] [code=&quot;java&quot;] insert into TB_DUTY select SEQ_TB_DUTY.nextval,A.* from( SELECT #{item.dscd}, #{item.unitId},#{item.year},#{item.month},#{item.day},#{item.weekDay...
MyBatis 多个条件使用Map传递参数进行批量删除
目录 1、使用场景 2、代码实现 3、实现结果展现 4、参考文章: 1、使用场景 因为项目需要针对资源文件(视频、音频、文档),编辑时候可能出现以下3种情况: 实现的项目效果图: 1.1、删除多个已经选择的标签(与本次文章相关内容) 1.2、新增标签(选择已有标签作为新增,输入新的标签作为新增的) 因为本业务场景之中与此文章相关的内容...
Mybatis动态SQL 条件查询,批量删除
比如说某宝的搜索。可以添加选择的嘛。也就是where 后面的条件。如果有12种条件。要是全一个一个写那是要写很多哦。mybatis就有动态sql。根据条件组合sql语句。 首先创建个前端页面<!DOCTYPE html> <html> <head> <title>hight_search.html</title> <meta http-equiv="keywords" conte
SpringMVC + Mybatis 增删改查(批量删除)
SpringMVC + Mybatis框架简单增删改查功能实现
mybatis 批量删除问题
  问题描述:这是在做一个客户管理的功能,对客户卡片进行批量分配和批量取消分配,然后该删除条件是要通过前端传过来的用户主键和客户主键进行查询得出的,产生该问题的主要原因是因为在foreach中使用了多个select语句,SQL语句in里面不支持多个select语句(仅支持一个),报语法错误 报错截图: 问题解决过程:在网上百度了很多,不知道是不是自己关键词搜错了,搜了好久都没有相关的...
MyBatis中的批量删除操作(转)
MyBatis中的批量删除操作 博客分类:   ORM java mybatis 批量 删除 批量删除  MyBatis的作用我想不用多说,今天说说MyBatis中的批量删除操作。  MyBatis中的删除使用delete节点完成,如:       Java代码   &amp;lt;delete id = &quot;delete&quot; parameterType = ...
用mybatis进行批量删除
利用mybatis的框架中的foreach标签进行批量删除 1 在DAO的接口层批量删除方法的参数是一个Integer类型的数组 并取别名  Public void delete(param(“别名”)Integer[] ids)   2在mapper文件中的delete标签 Delete sql语句最后的where 条件 in #{id}
mybatis 多条件批量更新
最近做到一个多条件修改功能,发现在mysql运行成功的语句,在mybatis里面却不行,所以在这里总结一下。 最后还是用case when then 完成的。 &amp;lt;update id=&quot;updateByPrimaryKeySelective&quot; parameterType=&quot;java.util.List&quot;&amp;gt; update table &amp;lt;trim...
mybatis动态Sql实现批量添加和批量删除
mybatis动态Sql实现批量添加和批量删除: 新建一个domainMapper接口: 接下来写:domainMapper.xml配置,在本利中即:UserMapper.xml &amp;lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot; ?&amp;gt; &amp;lt;!DOCTYPE mapper PUBLIC &quot;-//mybatis.org//DTD Mapper 3.0//EN&quot; ...
mybatis框架批量查询/批量删除
第一种 :以数组形式传入参数&amp;lt;!-- 批量删除 --&amp;gt; &amp;lt;delete id=&quot;deleteAll&quot; parameterType=&quot;String&quot;&amp;gt; delete from &amp;lt;include refid=&quot;tableName&quot;&amp;gt;&amp;lt;/include&amp;gt; where  条件字段 in &amp;lt;foreach item=&qu
mybatis批量删除的foreach标签
Talk is cheap. Show me the code. 我们先来看一下代码,mapper接口的方法如下: int delDataFilesByIds(@Param(&amp;quot;ids&amp;quot;) String[] ids); mapper的xml文件如下: &amp;amp;lt;delete id=&amp;quot;delDataFilesByIds&amp;quot; parameterType=&amp;quot;java.lang.String&amp;quot
基于Spring MVC + Mybatis实现多选框批量删除
此项目基于的框架是:springmvc+mybatis,步骤如下:   A.前台代码:   &amp;lt;th id=&quot;ckBox&quot; style=&quot;text-align:center;width: 3%;&quot;  data-bind=&quot;visible: deleteqx == '1'&quot;&amp;gt;  &amp;lt;input type=&quot;checkbox&quot; id=&quot;ckAll&quot; onclick=&
MyBatis批量删除,多参数
Mapper:public int recommendSolution(@Param(value ="id")int[] id,@Param(value ="name")String name);xml: update t_solution s set s.isRecommend = 1 ,s.expert_id = (select e.expert_id from t
MyBatis批量删除写法
1、DAO层接口void deleteAll(@Param(&quot;ids&quot;)List&amp;lt;Integer&amp;gt; ids); 2、Mapper文件&amp;lt;update id=&quot;deleteAll&quot;&amp;gt; update ems_emp set status=0 where id in &amp;lt;foreach collection=&quot;ids&quot; open=&quot;(&quot; item=&quot;i
Mybatis实现批量删除操作
这里主要考虑两种参数类型:数组或者集合.而这点区别主要体现在EmpMapper.xml文件中标签的collection属性: 当collection=”array“时,表名参数为数组; 当collection=”list“时,表名参数为集合. 具体示例如下:EmpMapper.xml: <!-- 批量删除员工信息 --> <delete id="batchDeleteEmps" par
Mybatis多表批量删除
一. 这里主要考虑两种参数类型:数组或者集合. 而这点区别主要体现在EmpMapper.xml文件中标签的collection属性: 当collection=”array“时,表名参数为数组;当collection=”list“时,表名参数为集合. 二. 注意: 无论Mybatis是与mysql数据库结合,还是与Oracle数据库,都同样适合如下设置与操作. 三. 具
Mybatis中的foreach方法,批量插入和批量删除
介绍一种比较简单的批量操作,一个批量添加一个批量删除: java代码: public class User implements Serializable { private Integer id; private String name; private String password; //setter and getter } 对应的Mapper.xml colum
Mybatis 使用动态语句实现批量删除(delete结合foreach)
Mybatis 使用动态语句实现批量删除(delete结合foreach)
MyBatis学习笔记-08.MyBatis动态Sql语句foreach的collection的用法以及用foreach实现批量删除与批量新增
续上篇:MyBatis学习笔记-07.MyBatis动态Sql语句if、where、trim、set本次将继续记MyBatis动态Sql语句的choose和foreach:一、choose(较少应用):有时我们不想应用到所有的条件语句,而只想从中择其一项。针对这种情况,MyBatis 提供了 choose 元素,它有点像 Java 中的 switch 语句。这里我们以mybatis官方文档中给出的...
Mybatis联合主键批量删除
xml采用如下配置 &amp;lt;delete id=&quot;batchRemoveWithParams&quot;&amp;gt; DELETE FROM your_table WHERE &amp;lt;foreach collection=&quot;list&quot; item=&quot;yourEntity&quot; index=&quot;index&quot; separator=&quot;or&q
java 批量删除多张表数据
[code=&quot;java&quot;] public String deleteMore(String... a) { // TODO Auto-generated method stub String return_code = &quot;0000&quot;; Statement st=null; String sql = &quot;&quot;; Connection con=null; try { ...
myBatis中删除条件的拼接问题
今天刚刚学习了mybatis,做了简单的对数据库的增删改查。在进行删除操作时,单条删除时很简单,但是批量删除的时候拼接删除条件却有些麻烦,现记录一下做法。 Sql语句中,当删除条件并不唯一的时候,我们有两种删除的sql语句,一种使用and拼接where中的条件,例如delete from 表名where 条件1 and 条件2,另一种是使用in 例如delete from 表名where 元素i
ibatis批量插入 批量删除 -iterate标签应用
项目开发中在很多地方可能会遇到同时插入多条记录到数据库的业务场景,如果业务级别循环单条插入数据会不断建立连接且有多个事务,这个时候如果业务的事务执行频率相当较高的话(高并发),对数据库的性能影响是比较大的;为了提高效率,批量操作会是不错的选择,一次批量操作只需要建立一次连接且一个事务,能很大程度上提高数据库的效率。       批量插入操作的sql语句原型如下: insert  i
日常总结 postgresql批量删除 mybatis动态sql spring事物
今天在写业务代码时,需要写一个删除数据库记录的方法。然而要操作的表被其他的表依赖。也就是本表的主键是其他表的外键。但是数据库并没有设计外键,所以只能手动删除关联表的信息  。用的框架是spring,dubbo,mybatis,数据库是postgresql。因为设计到多条sql语句。当然要用事务来解决数据的一致性和完整性的问题。下面先来重新学习一下spring事务。   数据库事务有严格的定义,必...
mybatis 中之批量删除操作
上面一篇博客对这个有所总结点击打开链接 这里要对这里进行详细解析,以及对错误进行总结: 在MyBatis传入List参数时,MyBatis报错:nested exception is org.apache.ibatis.binding.BindingException: Parameter 'idList' not found. Available parameters are [collec
mybatis实现数据的批量删除
mybatis中的删除语句配置         delete from product where id in                #{idItem}           product  表名 guid  字段名 collection里表示类型,这里是array,还可以是list idItem不用管,相当于一个变量
MyBatis批量增删改查操作
前文我们介绍了MyBatis基本的增删该查操作,本文介绍批量的增删改查操作。前文地址:http://blog.csdn.net/mahoking/article/details/43673741
MyBatis--Map实现多条件查询
#{属性、键、键.属性}
Mybatis多条件筛选
Mybatis条件筛选使用和where 1=1小技巧 最近用mybatis做项目数据库框架,学习了很多知识,今天分享两个小知识: 关于if标签的使用 where 1=1小技巧 关于if标签的使用 我们在做业务时,经常遇到按照条件查询,例如: 我们要根据年龄和性别筛选出用户列表 我们通常会这样写 select * from user where age=#{age} a...
mybatis plus的删除的条件构造器
/** 根据 entity 条件,删除记录 @param queryWrapper 实体对象封装操作类(可以为 null) @return 删除成功记录数 */ int delete(@Param(Constants.WRAPPER) Wrapper queryWrapper); UpdateWrapper updateWrapper = new UpdateWrapper()....
关于mybatis的批量删除操作
java,mybatis
Mybatis实现批量删除
公司工程用的是Mybatis的example的类,自动生成了对数据库的操作,批量操作的今天用到了,两种方式,一种需要拓展它生成的类,另一种自带的。 1、拓展新的方法: 1)在生成的Mapper类中增加一个方法: int deleteBathById(String[] ids) 2)在Mapper的配置文件中增加sql语句 &lt;delete id="delet...
Layui 数据表格批量删除和多条件搜索
layui数据表格批量删除 删除按钮 &amp;amp;amp;amp;amp;lt;button class=&amp;amp;amp;amp;quot;layui-btn&amp;amp;amp;amp;quot; data-type=&amp;amp;amp;amp;quot;getCheckData&amp;amp;amp;amp;quot; style=&amp;amp;amp;amp;quot;background:#7185a2&amp;amp;amp;amp;quot;&amp;amp
JAVAWEB开发之分页显示、批量删除、条件查询 以及Listener监听器
customer信息操作  添加 批量删除 简单条件查询 分页显示 (1)添加操作   问题:id是varchar类型,如何获取?          使用UUID工具类获取 完成添加操作  1.在showCustomer.jsp页面上添加一个连接,可以直接访问到添加页面 add.jsp  2.创建add.jsp 2.1.关于生日的日历组件 2.2.1.导入js        
mybatis的多条件查询案例(动态sql)
mybatis的动态sql拼接方式介绍
mybatis 脚本处理语句(条件查询,批量增删改查)
常用的mybatis sql操作
使用Mybatis实现多个控制条件查询
扩展知识: 1.给包起别名用标签 2.在中通过标签引Mapper.xml 如果想用package直接引入所有mapper/xml, 那么要求接口和xml在一个包里 实现多个条件查询 操作步骤如下: 1,在Mapper.xml中输入要查询的SQL语句 2,借口文件中参数用@Param接 语句如下: public List selAnimalBy(@Param(“NAME”) Str...
mybatis 操作(批量插入,批量修改,批量删除, 分页查询)
mybatis
文章热词 机器学习教程 Objective-C培训 交互设计视频教程 颜色模型 设计制作学习
相关热词 mysql关联查询两次本表 native底部 react extjs glyph 图标 如何实现云计算 云计算如何实现