巨简单的问题!求sql语句

zjzty 2005-08-08 11:31:34
表a中的数据
1 A1 A2
2 B1 B2
3 C1 C2
表b中的数据
1 A3 A4
2 B3 B4
我希望通过一个sql第一列根据a,b表的连接
希望结果如下
1 A1 A2 A3 A4
2 B1 B2 B3 B4
3 C1 C2 NULL NULL
谢谢
...全文
137 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
JeromeLiu 2005-08-09
  • 打赏
  • 举报
回复
outer join
waterfirer 2005-08-09
  • 打赏
  • 举报
回复
把条件去了才是笛卡尔积
paulfive 2005-08-09
  • 打赏
  • 举报
回复
你的意思是不是要用笛卡尔积
njhart2003 2005-08-08
  • 打赏
  • 举报
回复
复杂?简单?

其实就是一个外连接的问题!

.....
沝林 2005-08-08
  • 打赏
  • 举报
回复
噢,我以为表只有2列,用字段的头字母进行连接 ,是我我看错:(
sasacat 2005-08-08
  • 打赏
  • 举报
回复
天哪, duanzilin(寻) ,是你想得太复杂了,还是我想得太简单了
whao 2005-08-08
  • 打赏
  • 举报
回复
create table a (AID number(8),A1 varchar2(10),A2 varchar2(10));

create table b (BID number(8),B1 varchar2(10),B2 varchar2(10));

insert into a select 1,'A1','A2' from dual
union select 2,'B1','B2' from dual
union select 3,'C1','C2' from dual;

insert into b select 1,'A3','A4' from dual;
union select 2,'B3','B4' from dual;

select a.aid,a.a1,a.a2,b.b1,b.b2
from a left join b on a.aid=b.bid;
沝林 2005-08-08
  • 打赏
  • 举报
回复
ID1 ID2
---------- ----------
a1 a2
b1 b2
c1 c2

SQL> select * from b;

ID1 ID2
---------- ----------
a3 a4
b3 b4


select t2.*,t1.id1,t1.id2
from (select substr(id1,1,1) id,id1,id2 from b) t1,a t2
where substr(t2.id1,1,1) = t1.id (+)

SQL>
4 /

ID1 ID2 ID1 ID2
---------- ---------- ---------- ----------
a1 a2 a3 a4
b1 b2 b3 b4
c1 c2
sasacat 2005-08-08
  • 打赏
  • 举报
回复
select a.*, b.* from a,b
where a.id = b.id(+)

17,380

社区成员

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

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