请教一个多表关联查询性能问题.困惑很久

我们程序员开发当中,在做数据库持久化操作的时候.经常需要多表一起关联查询.除了对报表那块是由DBA给出SQL之外.其它的业务大多都是自己写SQL实现.
听到过很多必须这样做.但一直不知道具体原因.所以想发贴出来请教一下坛内高手.
例如现在有三个表,User_Info ,User_Job,User_Address.现在我写出两种SQL方式
(省略前面的select ...)
From User_Info  u,User_Job j,User_Address a WHERE u.uid=j.uid AND u.uid=a.uid  
这是一种写法.另一种写法:
From  User_Info  u INNER JOIN User_Job j ON u.uid=j.uid
INNER JOIN User_Address a ON u.uid=a.uid


(两种写法都省略SELET部分及其它WHERE子条件)
问题一.这两种SQL写法研究那种性能更高一些?它们的区别究竟有多大呢?
问题二.在第一种写法中.
u.uid=j.uid AND u.uid=a.uid这种多表关联的过滤条件.是紧跟着WHERE 后面查询效率更高,
还是跟在其它的更大的过滤子条件例如 u.uid=123 这种后面性能高呢?现在有的人与我说
紧跟WHERE后面效率要高些,也有的人说跟在u.uid=123后面高些.请问该听谁的?原因又是为什么呢
记得阅读相关资料也是说过滤条件越大放的位置越接近where性能越高.

问题三.像这种多表,如三到四个表,需要建立视图来查询吗?这样效率是否更高些.但相关说明却又告诉我这样
这样并不一定会效率更高,但能便于我们查询方便.
一口气,说了三个.谢谢热心朋友的指点.

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/404101/viewspace-157003/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/404101/viewspace-157003/

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值