事实证明,问题在于temp_company表号字段没有像Company表那样将ascii_bin设置为其排序规则。
如MysqL论坛(http://forums.mysql.com/read.php?24,603620,603732#msg-603732)所述,具有不同排序规则或字符集的varchar字段被视为具有不同的类型,因此它们之间不能使用索引。
补救措施是在temp_company表的number字段上设置相同的排序规则。然后,查询花费了3.3秒(使用左联接方法花费了2.7秒)。
MySQL升级后,MySQL NOT IN查询的速度大大降低
事实证明,问题在于temp_company表号字段没有像Company表那样将ascii_bin设置为其排序规则。
如MysqL论坛(http://forums.mysql.com/read.php?24,603620,603732#msg-603732)所述,具有不同排序规则或字符集的varchar字段被视为具有不同的类型,因此它们之间不能使用索引。
补救措施是在temp_company表的number字段上设置相同的排序规则。然后,查询花费了3.3秒(使用左联接方法花费了2.7秒)。