数据库的join是什么意思

浪漫小和 2012-03-14 07:55:39
有些right join left join 等等这些
我现在想知道如何衡量是left join还是right join
或者这里有什么标准?
两张表 那张是left join 那张是left join

这写join之间 他们查出来的结果是不一样的
所以如何判定呢?
...全文
611 10 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
Vension_NE 2012-03-15
  • 打赏
  • 举报
回复
太强大了,都看不懂啊
菖蒲老先生 2012-03-15
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 wdcqrs 的回复:]

我知道 但是你如何以一个表为标准 分为 左或者右呢
[/Quote]

表t1
id name
1 aaa
2 bbb

表t2
id name
1 aaa
3 ccc

inner join 是直连, 比如 t1 inner join t2 on t1.id = t2.id
检索表t1和表t2相同的记录,所以只有id=1的满足

left join 是左连,比如 t1 left join t2 on t1.id = t2.id
此时t1是主表,以t1为基础检索符合条件的,1和2都满足

right join 是右连,和左连相反,1和3满足条件。。。
KennycdjjMicr 2012-03-15
  • 打赏
  • 举报
回复
用于表之间的联合查询啊,
lazyfox 2012-03-15
  • 打赏
  • 举报
回复
w3c小巧精干。。。。
tanrenzong1986 2012-03-14
  • 打赏
  • 举报
回复
oracle的条件执行是从右往左顺序执行,如果有两个表:A表和B表,若A表的记录比B表多或A表记录很多,建议使用 table A left join table B,这样可以过滤掉部分不符条件的记录,提高sql执行效率。
结贴是美德 2012-03-14
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 wdcqrs 的回复:]

我知道 但是你如何以一个表为标准 分为 左或者右呢
[/Quote]

啊 我貌似明白你的意思了

A表 left join B表 就相当于 B表 right join A表 如果没记错的话。。。

你是这个意思么。。。
浪漫小和 2012-03-14
  • 打赏
  • 举报
回复
我知道 但是你如何以一个表为标准 分为 左或者右呢
结贴是美德 2012-03-14
  • 打赏
  • 举报
回复
这些东西的出现都是实际需求导致的,最开始只有内连接,lz可以找几个例子看看,了解一下他们都能达到什么效果就完事了。
龙四 2012-03-14
  • 打赏
  • 举报
回复
那就要弄懂inner join ,left join ,right join的含义了
jiming_soft 2012-03-14
  • 打赏
  • 举报
回复
这是左外联接与右外联接,左外联接是以左边的表为准连接右边的表,右边没有的行自动用NULL代替,右外连接则相反

62,634

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧