MySQL select、insert、update批量操作语句代码实例

 更新时间:2020年03月20日 13:41:43   作者:风缱云流  
这篇文章主要介绍了MySQL select、insert、update批量操作语句代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

  项目中经常的需要使用批量操作语句对数据进行操作,使用批量语句的时候需要注意MySQL数据库的条件限制,这里主要是数据的大小限制,这里对批量插入、批量查找及批量更新的基础操作进行下简单的汇总。

1、批量insert插入语句,如下的语句在测试环境尝试过1W+的批量插入,具体数量跟表结构及字段内容有关系。

<insert id=”addTextPushList”paramerterType = “java.util.List”>
  INSERT INTO SYS_TEXT_PUSH(
      PUSH_ID,
      USER_UM_ACCOUNT,
      USER_NAME,
      SECTION,
      USER_MOBILE,
      PUSH_STATUS,
      PROMOTE_ID,
      CREATED_BY,
      CREATION_DATE,
      ENABLED_FLAG  
)values
<foreach  collection=”list”  item = “item” separator=”,”>
  (
    #{item.pushId},
    #{item,userUmAccount},
    #{item.userName},
    #{item.section},
    #{item.userMobile},
    #{item.pushStatus},
    #{item.promoteId},
    #{item.createdBy},
    #{item.creationDate},
    #{item.enabledFlag}
)
</foreach>
</insert>

2、批量select查询语句

<select  id = “getTextPromoteByIds”  parameterType = “java.util.list” resultMap = “textPromoteMap”>
  SELECT 
    *
  FROM  SYS_TEXT_PROMOTE 
  WHERE
     TEXT_PUSH_FLAG = 1
    AND  PROMOTE_ID  IN
  <foreach  collection=”list”  item = “item” open=”(” separator=”,” close =”)”>
  #{item}
</foreach>
</select>

3、批量update语句。

第一种情况是需更新的值相同:

<update  id = “updatePushStatus” parameterType = “java.util.List”>
  update
     SYS_TEXT_PUSH
  SET
    PUSH_STATUS = 1,
    LAST_UPDATE_DATE = NOW()
  WHERE
      PUSH_ID  IN
<foreach  collection=”list”  item = “item” open=”(” separator=”,” close =”)”>
  #{item}
</foreach>
</update>

第二种情况是需更新的值不同:

<update  id = “updatePushStatus” parameterType = “java.util.List”>
<foreach  collection=”list”  item = “item” index = “index”>
  update
     SYS_TEXT_PUSH
  SET
    PUSH_STATUS = #{item.pushStatus},
    LAST_UPDATE_DATE = NOW()
  WHERE
      PUSH_ID  = #{item.pushId}
</foreach>
</update>

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

相关文章

  • 从 MySQL源码分析网络IO模型

    从 MySQL源码分析网络IO模型

    这篇文章主要为大家介绍了从 MySQL源码分析网络IO模型,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-06-06
  • 解决MySQL 8.0以上版本设置大小写不敏感的问题

    解决MySQL 8.0以上版本设置大小写不敏感的问题

    MySQL 8.0以上版本默认区分大小写,但在低版本(如5.7)中,可以通过在my.cnf配置文件的[mysqld]节下添加lower_case_table_names=1来设置大小写不敏感,本篇博客将介绍如何解决MySQL 8.0以上版本设置大小写不敏感的问题,需要的朋友可以参考下
    2023-11-11
  • mysql 8.0.22 zip压缩包版(免安装)下载、安装配置步骤详解

    mysql 8.0.22 zip压缩包版(免安装)下载、安装配置步骤详解

    这篇文章主要介绍了mysql 8.0.22 zip压缩包版(免安装)下载、安装配置步骤详解,本文分步骤通过图文并茂的形式给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-12-12
  • 解决MySQL时区日期时差8个小时的问题

    解决MySQL时区日期时差8个小时的问题

    本文主要介绍了解决MySQL时区日期时差8个小时的问题,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-01-01
  • MySQL EXPLAIN语句的使用示例

    MySQL EXPLAIN语句的使用示例

    这篇文章主要介绍了MySQL EXPLAIN语句的使用示例,帮助大家更好的理解和学习使用MySQL,感兴趣的朋友可以了解下
    2021-03-03
  • MySQL性能分析及explain的使用说明

    MySQL性能分析及explain的使用说明

    本文我们主要介绍了MySQL性能分析以及explain的使用,包括:组合索引、慢查询分析、MYISAM和INNODB的锁定、MYSQL的事务配置项等,希望能够对您有所帮助。
    2011-08-08
  • MySQL中如何在原有的表中增加一列

    MySQL中如何在原有的表中增加一列

    这篇文章主要介绍了MySQL中如何在原有的表中增加一列问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-02-02
  • Mysql中key和index的区别点整理

    Mysql中key和index的区别点整理

    在本篇文章里小编给大家整理的是关于Mysql中key和index的区别点整理,需要的朋友们可以学习下。
    2020-03-03
  • navicat如何利用sql语句查询表所有字段的字段名、类型及长度

    navicat如何利用sql语句查询表所有字段的字段名、类型及长度

    Navicat使用了极好的图形用户界面(GUI),可以让你用一种安全和更为容易的方式快速和容易地创建、组织、存取和共享信息,下面这篇文章主要给大家介绍了关于navicat如何利用sql语句查询表所有字段的字段名、类型及长度的相关资料,需要的朋友可以参考下
    2023-05-05
  • 分享Mysql命令大全

    分享Mysql命令大全

    本文给大家介绍mysql命令大全相关知识,涉及到mysql命令相关知识,对此感兴趣的朋友一起学习吧
    2015-12-12

最新评论