zoukankan      html  css  js  c++  java
  • MySQL Update语句与limit的结合使用

    首先感谢这位博主给的一个思路
    Listening_倾听

    ID是唯一值,换成需要的其他唯一值都可,若不需要排序把ORDER BY id ASC去掉即可

    UPDATE 表名 SET 列名='修改的值' WHERE id in (SELECT id FROM (SELECT * FROM 表名 ORDER BY id ASC LIMIT 0,1000) AS tt);
    
    UPDATE 表名 SET 列名='修改的值' WHERE id in (SELECT id FROM (SELECT * FROM 表名 ORDER BY id ASC LIMIT 1000,2000) AS tt);
    

    另外我自己写的一种方式,自己并未测过时间(虽然两种都没测过性能消耗),但可行,这种需要一个一个循环走,查出总量之后修改这个limit值

    
    UPDATE 表名 SET 列名='test' LIMIT 1000 WHERE 列名 != 'test';
    
    UPDATE 表名 SET 列名='test' LIMIT 2000 WHERE 列名 != 'test';
    

    但如果真的改单表单列所有的值,直接就跑好了,不要limit,像上边那么复杂其实会慢

  • 相关阅读:
    java 放射机制简介
    java 放射机制简介
    后海日记(1)
    后海日记(1)
    java 发邮件 代码
    java 发邮件 代码
    hadoop学习笔记411
    hadoop学习笔记411
    swoole_table
    用swoole简单实现MySQL连接池
  • 原文地址:https://www.cnblogs.com/AlinaL/p/14428563.html
Copyright © 2011-2022 走看看