问一个问题,MySQL5.7.29中 inner join 两表相连接,字符编码不同走了索引
left大表驱动小表不走
left 小表驱动大表走索引
数据两个表都是3000
一个是主键,一个是唯一索引
不知道这样叙述问题清楚不清楚,谢谢解答
问一个问题,MySQL5.7.29中 inner join 两表相连接,字符编码不同走了索引
left大表驱动小表不走
left 小表驱动大表走索引
数据两个表都是3000
一个是主键,一个是唯一索引
不知道这样叙述问题清楚不清楚,谢谢解答
例子,大表utf8
,小表gbk
大表驱动小表,utf8
无法转码gbk
,不能使用小表的索引
小表驱动大表,gbk
可以转码utf8
,可以使用大表的索引,EXPLAIN
的ref
列为func
15 回答8.4k 阅读
8 回答6.2k 阅读
5 回答3.2k 阅读✓ 已解决
3 回答3.6k 阅读✓ 已解决
1 回答4k 阅读✓ 已解决
3 回答6k 阅读
2 回答2.8k 阅读✓ 已解决
和版本没有关系,编码不一样正常情况是走不了索引的,小表作为主表走了索引的情况应该是mysql底层做的优化。