设为首页收藏本站

Scripts 学盟

 找回密码
 加入学盟

QQ登录

只需一步,快速开始

查看: 2222|回复: 3
打印 上一主题 下一主题

SQLServer [复制链接]

Rank: 8Rank: 8

1#
momo 发表于 2011-5-15 22:14:13 |显示全部楼层
今天看了点sql,纠结了好久的left join跟right join
a left join b   结果就是会返回a中的所有行,即使b中没有符合条件的行
a right join b 结果就是会返回b中的所有行,即使a中没有符合条件的行
a inner join b 结果就是返回两表中匹配的行
例子如下,其实对于上面的说法我总觉得有点怪怪的,不过看了例子就啥都晓得了
表a

ID      NAME        PR
1       oracal      aa
2        sql        bb
3       access      cc

表b
ID      DATE         SR
1       2011-1-2      sril
2       2011-1-3      scott
4       2011-1-3      wrox

写出得到下列结果的sql语句
ID       NAME     DATE
1        oracal   2011-1-2
2        sql      2011-1-3
3        access   null
SELECT a.ID,a.NAME,b.SR FROM A AS a left JOIN B AS b ON a.ID=b.ID
过了爱做梦的年纪
轰轰烈烈不如平静

使用道具 举报

Rank: 8Rank: 8

2#
momo 发表于 2011-5-15 22:21:44 |显示全部楼层
select a.ID,a.name,b.date from A as a inner join B as b on a.ID=b.ID
那结果应该就是
ID       NAME     DATE
1        oracal   2011-1-2
2        sql      2011-1-3
SELECT a.ID,a.NAME,b.DATE FROM A AS a right JOIN B AS b ON a.ID=b.ID
那结果应该就是
ID      DATE         NAME
1       2011-1-2      sril
2       2011-1-3      scott
4       2011-1-3      null
过了爱做梦的年纪
轰轰烈烈不如平静

使用道具 举报

Rank: 8Rank: 8

3#
momo 发表于 2011-5-16 09:29:51 |显示全部楼层
回复 7# 那个谁


    啊,对喔,杰杰厉害,嘿嘿。。。。。。。。。。
过了爱做梦的年纪
轰轰烈烈不如平静

使用道具 举报

Rank: 8Rank: 8

4#
momo 发表于 2011-5-16 09:30:40 |显示全部楼层
回复 6# 混混@普宁.中国


    混混你敷衍又!!!
过了爱做梦的年纪
轰轰烈烈不如平静

使用道具 举报

您需要登录后才可以回帖 登录 | 加入学盟

手机版|Scripts 学盟   |

GMT+8, 2024-5-17 02:17 , Processed in 1.060706 second(s), 11 queries .

Powered by Discuz! X2

© 2001-2011 Comsenz Inc.

回顶部