[转]MySql 中多个left join 之间的顺序问题

MySql 中多个left join 之间的顺序问题

三个表 板块表(block)、帖子表(post)、会员表(user)
如果查询 帖子列表中 帖子 是属于哪个板块和添加帖子的会员信息,sql语句如下:

效率高写法:

1.  SELECT * FROM post LEFT JOIN block ON....LEFT JOIN user ON....WHERE ...ORDER BY ....LIMIT

 效率稍低:

2.   SELECT * FROM post LEFT JOIN user ON....LEFT JOIN block ON....WHERE ...ORDER BY ....LIMIT ....

 关于连接条件的优化在顺序上有个原则:数剧量少的条件尽量写在前面。

一个论坛当中板块的数量要比用户的数量小的多了。

猜你喜欢

转载自gxl-ct001.iteye.com/blog/2082993