借人气 full join 在不同数据库有不同结果,知道的一定要近来看下(内详)

purexiafeng 2007-03-26 08:31:09
两张表 :
表aa
字段:
ID INT 自动增长
客户 char(10)
物品 char(10)
数量 int
表bb
字段:
ID INT 自动增长
客户 char(10)
物品 char(10)
数量 int

表aa :
数据:
ID 客户 物品 数量
1 1 1 1


表bb :
数据:
ID 客户 物品 数量
1 2 2 3
2 2 2 1
3 1 1 4

查询语句:
select a1.*,b1.*
from
(select 客户,物品,sum(数量) from aa group by 客户,物品)a1
full join
(select 客户,物品,sum(数量) from bb group by 客户,物品)b1
on a1.客户=b1.客户 and a1.数量=b1.数量

在本地数据:结果是
a1.客户 物品 数量 b1.客户 物品 数量
1 1 1 1 1 4
NULL NULL NULL 2 2 4
在另一数据:结果是
a1.客户 物品 数量 b1.客户 物品 数量
1 1 1 1 1 4
NULL NULL NULL 2 2 null
NULL NULL NULL 2 2 null

b1里面的(没有跟A对应起来的)数据的分组效果就没有了。郁闷,望有人能知道原因!
...全文
176 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
CathySun118 2007-03-26
  • 打赏
  • 举报
回复
没有用过Oracle,帮顶
purexiafeng 2007-03-26
  • 打赏
  • 举报
回复
我有 left join union right join 在出错误的数据用 是正确的结果,就是不能用full join
purexiafeng 2007-03-26
  • 打赏
  • 举报
回复
我现在是在服务器上的效果就是不对,郁闷在本地的数据是对啊,请问是服务器数据库的原因吗。有人遇到这种事吗。我用的是9I

34,590

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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