数据库
mysql
优化
mysql 连表操作后字符集不同导致索引失效,字段1是utf8mb4字符集,字段2是utf8字符集。字符集转换遵循由小到大的原则,因为utf8mb4是utf8的超集,所以这里把utf8转换成utf8mb4,即把t1.code转换成utf8mb4字符集,转换了之后,由于t1.code上面的索引仍然是utf8字符集,所以这个索引就被执行计划忽略了,然后t1表只能选择全表扫描。更糟糕的是,如果t2筛选出来的记录不止1条,那么t1就会被全表扫描多次,性能之差可想而知
laosun
阅读:2399
评论:0
2019-08-22