1、删除慢 😄
DELETE FROM A WHERE A.ID IN (SELECT AID FROM B);
问题描述: 我要通过B表中的AID当做A表的删除条件,A表的ID是有索引的,但是删除的时候,通过执行计划发现,A表的ID索引未生效,导致删除数据非常慢。
解决方案: 通过表别名可以快速时间 DELETE T1 FROM A T1 WHERE T1.ID IN (SELECT AID FROM B);
解决后: 未做表别名,删除时间在3-4分钟左右,做表别名后,删除时间2-3秒
参考文章:mysql中delete in子查询不走索引问题分析-mysql教程-PHP中文网
2、判断不一致
select 'A ' = 'A';
以上sql,按照肉眼判断是不成立的
5.7版本的时候执行结果是成立
8.0版本执行结果是不成立
评论区