美文网首页
MySQL实战应用

MySQL实战应用

作者: 张磊_e325 | 来源:发表于2019-07-18 16:29 被阅读0次

一、批量更新

一:语法


UPDATE mytable SET

    myfield = CASE id

        WHEN 1 THEN 'value'

        WHEN 2 THEN 'value'

        WHEN 3 THEN 'value'

    END

WHERE id IN (1,2,3)

二:mybatis的xml文件写法

<update id="updateBatchList" parameterType="java.util.List">
    update com_list_all set eid = CASE ent_name
        <foreach collection="list" item="com">
                WHEN #{com.entName} THEN #{com.eid}
        </foreach>
        END,
        ent_sname = CASE ent_name
        <foreach collection="list" item="com">
                WHEN #{com.entName} THEN #{com.entSname}
        </foreach>
        END,
        firstpy = CASE ent_name
        <foreach collection="list" item="com">
                WHEN #{com.entName} THEN #{com.firstpy}
        </foreach>
        END
    WHERE ent_name IN
   <foreach collection="list" separator="," item="com" open="(" close=")">
          #{com.entName}
    </foreach>
</update>

二、分段更新(update语句需排序才能加limit)

UPDATE ${tbname} SET crtime=now() ORDER BY crtime DESC LIMIT 100000

三、有则更新无则插入

1. REPLACE INTO + 唯一索引

REPLACE INTO `table` (`unique_column`,`num`) VALUES ($unique_value,$num);

注意:

当记录存在时(唯一索引冲突),会将命中记录删除,然后重新插入一条记录。所以 受影响的行: 2条
不可以使用自增主键

2. ON DUPLICATE

INSERT INTO `table` (`unique_column`,`num`) VALUES($unique_value,$num) ON DUPLICATE UPDATE num=$num;

注意:

当记录存在时(id或唯一索引冲突),会更新记录

相关文章

  • MySQL实战应用

    一、批量更新 一:语法 二:mybatis的xml文件写法 二、分段更新(update语句需排序才能加limit)...

  • MySQL实战 目录

    MySQL实战 MySQL实战1 数据库概念介绍MySQL实战2 语法、筛选条件和函数MySQL实战3 分组查询和...

  • MySQL实战45讲阅读笔记-MVCC

    系列MySQL实战45讲阅读笔记-MySQL入门MySQL实战45讲阅读笔记-日志MySQL实战45讲阅读笔记-锁...

  • MySQL实战45讲阅读笔记-索引

    系列MySQL实战45讲阅读笔记-MySQL入门MySQL实战45讲阅读笔记-日志MySQL实战45讲阅读笔记-锁...

  • MySQL实战45讲阅读笔记-日志

    系列MySQL实战45讲阅读笔记-MySQL入门MySQL实战45讲阅读笔记-日志MySQL实战45讲阅读笔记-锁...

  • MySQL实战45讲阅读笔记-锁

    系列MySQL实战45讲阅读笔记-MySQL入门MySQL实战45讲阅读笔记-日志MySQL实战45讲阅读笔记-锁...

  • MySQL实战45讲阅读笔记-MySQL入门

    系列MySQL实战45讲阅读笔记-MySQL入门MySQL实战45讲阅读笔记-日志MySQL实战45讲阅读笔记-锁...

  • php mysql 读写分离

    Mysql主从同步的原理 Mysql主从同步实战 PHP+MYSQL 读写分离简单实战

  • Docker Compose实战

    Docker Compose 实战 Tomcat Docker Compose 实战 MySQL MySQL5 M...

  • 专栏 - 实战 MySQL

    专栏 - 实战 MySQL 本专栏用于实战 mysql 的整个学习过程。包括: 搭建 MySQL 测试环境安装 M...

网友评论

      本文标题:MySQL实战应用

      本文链接:https://www.haomeiwen.com/subject/xlnllctx.html