full join问题

winstonbonaparte 2014-12-26 02:06:36
 select * from 
(select 1 a ,2 b from dual) m
full join
(select 0 c,2 d from dual) n
on m.a = n.c ;

这样一条语句,在一个库中执行结果为空(一条数据都没有),而在另外一个库中执行结果是如下:

为什么在那个库中执行的结果会为空呢,照理full join应该是全部都查出来才对,就象图中那样。求解释
...全文
598 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
sunboy_yf 2015-01-23
  • 打赏
  • 举报
回复
很奇怪,在我的数据库里面执行的结果也是和你发的截图一样。 理论是是应该2条,一条也没有很奇怪。这个SQL的标准语法,解析上不应该有歧义。 咨询检查下,是不是又什么不一样的地方。
winstonbonaparte 2014-12-29
  • 打赏
  • 举报
回复
引用 3 楼 bw555 的回复:
仔细检查你的语句吧,按说是不会出现这种现象的
同样的语句,连接两个不同的库就是这样的两种效果。。。。 我是把这语句复制粘贴过去执行的
bw555 2014-12-27
  • 打赏
  • 举报
回复
仔细检查你的语句吧,按说是不会出现这种现象的
winstonbonaparte 2014-12-26
  • 打赏
  • 举报
回复
引用 1 楼 wmxcn2000 的回复:

-- 我想可能是两个语句,存在着差异,建议你把那边的截图也发上来。
SQL> select * from
  2  (select 1 a ,2 b from dual) m
  3  full join
  4  (select 0 c,2 d from dual) n
  5  on  m.a = n.c ;

         A          B          C          D
---------- ---------- ---------- ----------
                               0          2
         1          2

同样的语句。执行结果不同
卖水果的net 2014-12-26
  • 打赏
  • 举报
回复

-- 我想可能是两个语句,存在着差异,建议你把那边的截图也发上来。
SQL> select * from
  2  (select 1 a ,2 b from dual) m
  3  full join
  4  (select 0 c,2 d from dual) n
  5  on  m.a = n.c ;

         A          B          C          D
---------- ---------- ---------- ----------
                               0          2
         1          2

17,377

社区成员

发帖
与我相关
我的任务
社区描述
Oracle 基础和管理
社区管理员
  • 基础和管理社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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