MariaDB社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 2601|回复: 2
打印 上一主题 下一主题

LEFT JION的用法

[复制链接]
跳转到指定楼层
1#
发表于 2011-11-22 15:11:10 | 只看该作者 回帖奖励 |正序浏览 |阅读模式
SELECT IFNULL(SUM(skt43.skf610),0)-IFNULL(SUM(skt43.skf669),0),
skt57.skf772
FROM skt57
LEFT JOIN (skt43,skt42)
ON (skt43.skf616=skt42.skf587
AND skt57.skf772=skt42.skf589  
AND skt42.skf591=5
AND skt43.skf611>=20110701
AND skt43.skf611<=20110930)
AND skt42.skf597=0
GROUP BY skt57.skf772,skt42.skf590
HAVING skt42.skf590=16;




SELECT IFNULL(SUM(skt43.skf610),0)-IFNULL(SUM(skt43.skf669),0),
skt57.skf772,
FROM skt43,skt42,skt57
WHERE skt43.skf616=skt42.skf587
AND skt57.skf772=skt42.skf589
AND skt42.skf590=16
AND skt42.skf591=5 AND SKT42.SKF597=0
AND skt43.skf611>=20110701
AND skt43.skf611<=20110930
GROUP BY skt57.skf772;


这两个实现的查询结果都是一样的,所以就有疑问了,这两种哪个好,百度了只有讲LEFT JOIN ON和LEFT JOIN WHERE的区别的,越学问题越多呀
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 转播转播 分享分享 分享淘帖 顶 踩
3#
发表于 2011-11-23 10:54:55 | 只看该作者
用explain看看就知道了
2#
发表于 2011-11-23 09:33:03 | 只看该作者
用explain看看就知道了
原则上先滤出数据排序比排序后再滤数据效果要好
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|Archiver|小黑屋|手机版|MariaDB社区 ( 京ICP备07012489号    |
业务联系: QQ:48474881; 邮箱: 48474881@qq.com; 电话:13911732319
声明:本站部分文章是网友转载,若未经作者同意或署名有误,请联系网站管理员。

GMT+8, 2024-11-10 07:13 , Processed in 0.095389 second(s), 20 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表