欢迎各位兄弟 发布技术文章

这里的技术是共享的

You are here

MySQL left join快 inner join慢

遇到一个非常诡异的问题 

A(ID,a1,a2...),B(ID,b1,b2...)两表 ,两个ID列为主键,不过类型不一致 A的是mediumint B的是varchar 

大概都有2000多条数据 

使用最基础的左连接 要跑1.9S ,但是用inner join只要0.1S 

于是乎就google “left join快 inner join慢 ”关键字 

结果要么是对这两种连接的效率讨论 要么是说数据库的存储引擎不一致导致的 

我发现确实A,B的存储引擎不一致,但是都改为innodb了 依然没作用 

经过一天纠结后  试试运气把A的ID数据类型改为varchar  竟然变快了。。。 

因为数据库表不是自己创建的 所以数据类型也就没太在意  至于深层次的数据类型转换还没细看 粗略查了一下 不过这种转换对查询的效率影响还是蛮大的。 

特发帖纪念。。。

来自 
http://blog.csdn.net/wwwcomy/article/details/49098789
普通分类: