我的观点正确吗?
我从来不用right join。
因为,可以使用left join来代替,把2个表位置一换就可以用left join了,对吗?还是未遇到复杂问题?
第二,洒家至今,从未使用过其他外join
编程10个月了,只用left join.什么inner,outer join一次没用过。
你们什么情况?
------解决方案-------------------- left join 可以代替right join.
mysql优化器在遇到right join时,也是转换成left join再进行操作的。
inner join 和left join就是2个完全不一样的功能了。
------解决方案-------------------- inner join是搜两表有关联的记录,left join是搜左表,然后按照关联关系拼接上右表.还是得看业务需求。
------解决方案-------------------- 引用 以下二式是不是相等呢? select * from a inner join b on a.wc=b.wc select * from a,b where a.wc=b.wc
------解决方案-------------------- 兄弟你有些专牛角尖了。
不同的写法只是给你提供更灵活的处理方式而已。
就好像i++等价于i=i+1(当然可能i++在效率上略高些,猜测而已。)
------解决方案-------------------- 多尝试,会有更深入的了解。人最怕的就是一个懒字。
------解决方案-------------------- from table1 inner join table2 where table1.id=table2.id 等价于 from table1 a,table2 b where a.id=b.id
left join 和 right join 可以互换
------解决方案-------------------- 条条大路通罗马
------解决方案-------------------- 根据具体情况使用不同的外连接,在连接字段上建立索引,LEFT JOIN、RIGHT JOIN可以互换,
习惯不同而已,个人习惯用LEFT JOIN
------解决方案-------------------- Inner join与Left join实现功能不一样
如果该用Inner join的地方都Left join代替,那就悲剧了
而且Left join效率通常比Inner join低
------解决方案-------------------- 探讨 引用: 引用以下二式是不是相等呢? select * from a inner join b on a.wc=b.wc select * from a,b where a.wc=b.wc 引用inner join 肯定要用,不过很多时候会使用inner join 的另外一种格式 from a,b where a.id=b.id 产生结果完全相……
------解决方案-------------------- 我也一直使用left join,在mssql
不过,以前的mssql使用者一直宣传left join效率很低,
但是我在sql2000/2005基本没遇到,否则也早就不敢使用left join了
------解决方案-------------------- 儿子的小伙伴甲称呼我是 胖墩爸爸
儿子的小伙伴乙称呼我是 他爸爸
不管怎么样 我还只是我儿子的爸爸.
------解决方案-------------------- left join 是可以代替right join .
但是inner join 用的也比较多。你不用可能你还没遇到需要用的地方。
------解决方案--------------------
探讨 这个没什么啊。很多人大部分情况下只是用LEFT JOIN,毕竟这个从逻辑上更容易让人理解。 个人习惯而已,从效率上没什么差别。 inner join 肯定要用,不过很多时候会使用inner join 的另外一种格式 from a,b where a.id=b.id outer join 本身就是 left outer join 或者 right outer join ,语法……
------解决方案--------------------
集合的观点
inner join:交集
full join:全集
a left join b:a全集 b交集 right反之
------解决方案-------------------- 探讨 我从来不用right join。 因为,可以使用left join来代替,把2个表位置一换就可以用left join了,对吗?还是未遇到复杂问题? 第二,洒家至今,从未使用过其他外join 编程10个月了,只用left join.什么inner,outer join一次没用过。 你们什么情况?
------解决方案-------------------- 知道原理,做过实践。然后一切从实际需求出发即可。
------解决方案-------------------- 第一正确
第二不正确,inner join,Full Outer Join 是需要使用的,inner join更常用,效率也高,Full Outer Join 在特定情况下需要,对于sql 2008增加的cross apply和outer apply在特定情况业时需要使用的