MySQL 强制索引不起作用

标签 mysql indexing

我在相对较小的表(~5000 行)之间运行一个简单的左连接查询:

select *
from table1
left join table2 
force index (index_table2_on_name) for join 
on table1.name = table2.name

index_table2_on_name存在,但Mysql拒绝使用。对查询运行解释返回:两个表的 select_type = SIMPLE,type = ALL 和 possible_keys = NULL。

有什么想法吗?

最佳答案

发现问题。 看起来 table1.name 和 table2.name 定义了不同的字符集。 奇怪的是Mysql忽略索引而不是使用转换。

关于MySQL 强制索引不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4860113/

相关文章:

sql - 加入因 WHERE 条件而减慢

python - ValueError : Substring not found when using str. 索引

php - 消息系统流入数据库

mysql - 连接表以获取用户事件

php - mysql 到 mysqli 连接代码失败?

mysql - 如何从 MySQL Workbench 中的表中删除索引选项卡?

MySQL 不使用索引

matlab - 获取矩阵的偶数/奇数索引 - MATLAB

php - 登录表单未提交甚至未检查,但注册功能正常

php从json向mysql插入数据运行速度太慢