首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > PHP >

mysql 请教where a.id=b.id 和join on a.id=b.id 在效率上的区别

2013-12-16 
mysql求助请问where a.idb.id 和join on a.idb.id在效率上的区别下面是ecshop 的商品表和品牌表的查询,

mysql求助 请问where a.id=b.id 和join on a.id=b.id 在效率上的区别
下面是ecshop 的商品表和品牌表的查询,请问它们的查询效率有什么区别呢? 
还有一个问题是 left join 和join的效率哪个高一点呢。
谢谢 !!


SELECT a.`goods_id` , a.`goods_name` , b.brand_name
FROM  `ecs_goods` AS a
LEFT JOIN ecs_brand AS b ON a.`brand_id` = b.`brand_id` 


SELECT a.`goods_id` , a.`goods_name` , b.brand_name
FROM  `ecs_goods` AS a, ecs_brand AS b
WHERE a.`brand_id` = b.`brand_id`
 

mysql
[解决办法]
你的第一式是左链接,因无其他过滤条件
结果集中将会有左表(ecs_goods)的全部记录

你的第二式是逗号连接(INNER JOIN 的简写)
结果集中只会出现符合连接条件的记录

两者的作用是不同的,不能做效率比较

热点排行