3,499
社区成员
发帖
与我相关
我的任务
分享
with a as(
select '0001' 电子号,'11' 规格, '1a9' 型号, '000001' 起始号码, '0000025' 终止号码 from dual
union all
select '0001', '12', '1a23', '000001', '0000025' from dual
union all
select '0002', '12', 'a90', '010010', '0200035' from dual
union all
select '0003', '3', '390', '034040', '034065' from dual
),
b as(
select '0001' 电子号,'11' 规格, '1a9' 型号, '000001' 起始号码, '000009' 终止号码 from dual
union all
select '0001', '11', '1a9', '000010', '000024' from dual
union all
select '0001', '11', '1a9', '000010', '000025' from dual
union all
select '0002', '12', 'a90', '010010', '0200035' from dual
)
select a.电子号,a.规格,a.型号,a.起始号码,a.终止号码,
b.电子号,b.规格,b.型号,b.起始号码,b.终止号码
from a,b
where a.电子号=b.电子号(+) and a.规格=b.规格(+) and a.型号=b.型号(+)
order by 1
电子号 规格 型号 起始号码 终止号码 电子号 规格 型号 起始号码 终止号码
0001 11 1a9 000001 0000025 0001 11 1a9 000001 000009
0001 11 1a9 000001 0000025 0001 11 1a9 000010 000024
0001 11 1a9 000001 0000025 0001 11 1a9 000010 000025
0001 12 1a23 000001 0000025
0002 12 a90 010010 0200035 0002 12 a90 010010 0200035
0003 3 390 034040 034065
--请问上面结果倒数第三天你的需求为什么给过滤掉?
--麻烦你把你的需求先说明白了,再来提问好不好?
--就只给一个结果,屁业务逻辑描述都没的,让我们去猜你的需求啊?
--这条记录也符合你说的,如果表B没数据,应该有NULL数据
--简直浪费时间,走了~~
--外连接
select a.电子号,a.规格,a.型号,a.起始号码,a.终止号码,
b.电子号,b.规格,b.型号,b.起始号码,b.终止号码
from a,b
where a.电子号=b.电子号(+)