两表关联问题

realx 2006-04-03 11:45:28
我想根据两个表的ROWNUM进行外联结,最好只用一条SQL语句实现。比如有A,B两表,当A表的记录数比B表多时,达到A=B(+)的效果,当A表的记录数比B表少时达到A(+)=B的效果。
...全文
209 1 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
adaizi1980 2006-04-03
  • 打赏
  • 举报
回复
select a_id,... from
( select a_id,b_id,... from
(select a.rownum as a_id,... from a ) as A1,
(select b.rownum as b_id,... from a ) as B1
where A1.a_id = B1.b_id(+)
)

union all

select b_id,... from
( select a_id,b_id,... from
(select a.rownum as a_id,... from a ) as A1,
(select b.rownum as b_id,... from a ) as B1
where B1.b_id = A1.a_id(+)
and not exists
( select 1 from
( select a_id,b_id,... from
(select a.rownum as a_id,... from a ) as A1,
(select b.rownum as b_id,... from a ) as B1
where A1.a_id = B1.b_id(+)
) XX where XX.a_id = B1.b_id
)
)

17,140

社区成员

发帖
与我相关
我的任务
社区描述
Oracle开发相关技术讨论
社区管理员
  • 开发
  • Lucifer三思而后行
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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