随笔 - 175  文章 - 202  trackbacks - 0
<2011年10月>
2526272829301
2345678
9101112131415
16171819202122
23242526272829
303112345

第一个Blog,记录哈哈的生活

常用链接

留言簿(16)

随笔分类

随笔档案

文章分类

文章档案

收藏夹

Java links

搜索

  •  

最新评论

阅读排行榜

评论排行榜

1. cross join 就是笛卡尔积
那看起来好象和 inner join 是一样的,在 SQL 标准中定义的是 cross join 就是没有条件的 inner join。在 mysql 中,不区分,这两个等价。

2. natural (left) join 是把两个表名字一样的列,做相等条件处理,比如:

t1
id1 name

t2
id2 name

那么 select t1.id1, t2.id1, t1.name from t1 natural join t2 就等价

select t1.id1, t2.id1, t1.name from t1 join t2 on (t1.name = t2.name)

自动把一样名称的列(name)做了个相待条件处理,多列也会同时处理。

所以,这两种 join 没人用是有原因的。

cross join 没意义,一般用逗号就可以了。

natural 降低了可读性,不建议使用。
posted on 2011-10-13 18:06 哈哈的日子 阅读(621) 评论(0)  编辑  收藏

只有注册用户登录后才能发表评论。


网站导航: