MySQL的InnoDB引擎下执行更新Update语句时 执行时间太久 问题集锦

场景1 : 更新cjq表的一个字段,发现执行时间半个小时以上还没执行结束

UPDATE t_hplc_cjq SET cjq_type=2 WHERE 
cjq_type IS NULL
AND id IN (
   SELECT cjq_id FROM t_hplc_family_import GROUP BY cjq_id HAVING COUNT(*)=1
)  
;

解决办法:把8万个cjq_id单独查询出来,然后更新

复制代码
UPDATE t_hplc_cjq SET cjq_type=2 WHERE 
cjq_type IS NULL
AND id IN 
(
41,
42,
43,
...
)
复制代码

 参考博客: https://heapdump.cn/article/3097517

 

另一种解决方案:  "长字符串"拆成"短字符串"

例如 : 平利路21弄1号   拆成   平利路      21弄    1号   3个字段

 

posted @   Peter.Jones  阅读(833)  评论(1编辑  收藏  举报
相关博文:
阅读排行:
· 清华大学推出第四讲使用 DeepSeek + DeepResearch 让科研像聊天一样简单!
· 推荐几款开源且免费的 .NET MAUI 组件库
· 实操Deepseek接入个人知识库
· 易语言 —— 开山篇
· Trae初体验
历史上的今天:
2018-08-25 Linux常用命令 查找文件
点击右上角即可分享
微信分享提示