123
返回列表 发新帖
楼主: wanan_YLF

真诚请教:大数据量左连接怎么提高性能?

[复制链接]
论坛徽章:
4
2011新春纪念徽章
日期:2011-04-15 12:20:32咸鸭蛋
日期:2011-08-05 11:40:05ITPUB十周年纪念徽章
日期:2011-11-01 16:26:292012新春纪念徽章
日期:2012-01-04 11:57:56
21#
发表于 2011-3-14 15:42 | 只看该作者
原帖由 wanan_YLF 于 2011-3-14 11:56 发表
感谢jinguanding的耐心和解答,确实我对join on的理解错了...
参考了下http://www.cnblogs.com/tinachang ... /09/25/1298949.html,确实对left join 和inner join了解得清晰一点了。
我想,反正A表不符合条件的最后都过滤掉了,那是不是直接做INNER JOIN 会更好一点?从性能上说...



看了你那个文章,还是没有明白你的意思!

使用道具 举报

回复
论坛徽章:
8
双黄蛋
日期:2011-08-11 14:51:29蜘蛛蛋
日期:2011-08-15 20:53:08灰彻蛋
日期:2011-08-23 17:46:31ITPUB十周年纪念徽章
日期:2011-11-01 16:26:292012新春纪念徽章
日期:2012-01-04 11:57:56咸鸭蛋
日期:2012-01-09 11:14:00紫蛋头
日期:2012-03-20 17:08:01优秀写手
日期:2013-12-18 09:29:14
22#
 楼主| 发表于 2011-3-14 16:09 | 只看该作者

回复 #21 mysqldbd 的帖子

select a.MeiShiID,a.Title,a.Picture,a.HitNum,a.MainMaterials2,a.Adminicle2,a.Spice2,a.HitNum
from a left join  b on (a.MeiShiID=b.MeiShiID)
where b.GongXiaoID=1040700 AND Updated>'2011-03-05'and Updated<'2011-03-12'  order by a.HitNum DESC LIMIT 0,10;

----------------------------------------------
这个是我原来的语句...where b.GongXiaoID=1040700 不就是相当于LEFT JOIN后 b.GongXiaoID IS NULL的行都被过滤,也就是A表中没左连接B表的行都没出现在最后结果中,那样的话,选择INNER JOIN而不是LEFT JOIN,会不会更好点?

顺便问下,mysql中,where后面的条件顺序是否对性能有影响?是否要将过滤量比较大的条件放在前面?我之前一直这样认为,但今天看到网文说对SQL sever没影响,oracle则需要,那mysql呢?

[ 本帖最后由 wanan_YLF 于 2011-3-14 16:14 编辑 ]

使用道具 举报

回复
论坛徽章:
4
2014年新春福章
日期:2014-02-18 16:43:09马上有钱
日期:2014-02-18 16:43:09美羊羊
日期:2015-03-04 14:52:282015年新春福章
日期:2015-03-06 11:58:18
23#
发表于 2011-3-15 14:57 | 只看该作者
范围查找很费资源。

使用道具 举报

回复
论坛徽章:
4
2014年新春福章
日期:2014-02-18 16:43:09马上有钱
日期:2014-02-18 16:43:09美羊羊
日期:2015-03-04 14:52:282015年新春福章
日期:2015-03-06 11:58:18
24#
发表于 2011-3-15 14:58 | 只看该作者
where的顺序影响聚集索引

使用道具 举报

回复
论坛徽章:
4
2011新春纪念徽章
日期:2011-04-15 12:20:32咸鸭蛋
日期:2011-08-05 11:40:05ITPUB十周年纪念徽章
日期:2011-11-01 16:26:292012新春纪念徽章
日期:2012-01-04 11:57:56
25#
发表于 2011-3-15 15:02 | 只看该作者
原帖由 zhengwei_zw 于 2011-3-15 14:58 发表
where的顺序影响聚集索引


呵呵,如何影响呢?

使用道具 举报

回复
论坛徽章:
52
2015年新春福章
日期:2015-03-06 11:57:312012新春纪念徽章
日期:2012-02-13 15:12:252012新春纪念徽章
日期:2012-02-13 15:12:25生肖徽章2007版:龙
日期:2012-02-07 10:33:22生肖徽章2007版:龙
日期:2012-02-07 10:33:22生肖徽章2007版:龙
日期:2012-02-07 10:33:22生肖徽章2007版:龙
日期:2012-02-07 10:33:22生肖徽章2007版:龙
日期:2012-02-07 10:33:22生肖徽章2007版:龙
日期:2012-02-07 10:32:552012新春纪念徽章
日期:2012-02-07 09:59:35
26#
发表于 2011-3-26 18:08 | 只看该作者

回复 #25 mysqldbd 的帖子

剖析:MySQL的左连接、右连接、等值连接异同,连接地址:
http://www.mysqlops.com/2011/03/ ... ght-inner-join.html

使用道具 举报

回复

您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

TOP技术积分榜 社区积分榜 徽章 团队 统计 知识索引树 积分竞拍 文本模式 帮助
  ITPUB首页 | ITPUB论坛 | 数据库技术 | 企业信息化 | 开发技术 | 微软技术 | 软件工程与项目管理 | IBM技术园地 | 行业纵向讨论 | IT招聘 | IT文档
  ChinaUnix | ChinaUnix博客 | ChinaUnix论坛
CopyRight 1999-2011 itpub.net All Right Reserved. 北京盛拓优讯信息技术有限公司版权所有 联系我们 未成年人举报专区 
京ICP备16024965号-8  北京市公安局海淀分局网监中心备案编号:11010802021510 广播电视节目制作经营许可证:编号(京)字第1149号
  
快速回复 返回顶部 返回列表