17,086
社区成员
发帖
与我相关
我的任务
分享
with goods as (
select 1 goodsid,'青霉素' goodsname from dual
union all
select 2 goodsid,'西瓜霜' goodsname from dual
union all
select 3 goodsid,'创可贴' goodsname from dual
union all
select 4 goodsid,'西洋参' goodsname from dual
)
, su as (
select 1 goodsid,60 suqty from dual
union all
select 2 goodsid,70 suqty from dual
),sa as (
select 2 goodsid,80 saqty from dual
union all
select 3 goodsid,90 saqty from dual
)
--select a.goodsid,goodsname,nvl(suqty,0) from goods a full outer join su b on (a.goodsid=b.goodsid);
--select a.goodsid,goodsname,nvl(suqty,0),nvl(saqty,0)
--from goods a full outer join su b on (a.goodsid=b.goodsid) full outer join sa c on (a.goodsid=c.goodsid)
--where a.goodsid=b.goodsid or a.goodsid=c.goodsid;
with goods as (
select 1 goodsid,'青霉素' goodsname from dual
union all
select 2 goodsid,'西瓜霜' goodsname from dual
union all
select 3 goodsid,'创可贴' goodsname from dual
union all
select 4 goodsid,'西洋参' goodsname from dual
)
, su as (
select 1 goodsid,60 suqty from dual
union all
select 2 goodsid,70 suqty from dual
),sa as (
select 1 goodsid,80 saqty from dual
union all
select 2 goodsid,90 saqty from dual
)
select goods.goodsid,goods.goodsname,nvl(suqty,0) suqty,nvl(saqty,0) saqty from goods,su,sa where
goods.goodsid=su.goodsid(+) and su.goodsid=sa.goodsid(+)
with goods as (
select 1 goodsid,'青霉素' goodsname from dual
union all
select 2 goodsid,'西瓜霜' goodsname from dual
union all
select 3 goodsid,'创可贴' goodsname from dual
union all
select 4 goodsid,'西洋参' goodsname from dual
)
, su as (
select 1 goodsid,60 suqty from dual
union all
select 2 goodsid,70 suqty from dual
)
select goods.goodsid,goods.goodsname,nvl(su.suqty,0) suqty from goods,su where goods.goodsid = su.goodsid(+)
order by 1
with goods as (
select 1 goodsid,'青霉素' goodsname from dual
union all
select 2 goodsid,'西瓜霜' goodsname from dual
union all
select 3 goodsid,'创可贴' goodsname from dual
union all
select 4 goodsid,'西洋参' goodsname from dual
)
, su as (
select 1 goodsid,60 suqty from dual
union all
select 2 goodsid,70 suqty from dual
),sa as (
select 1 goodsid,80 saqty from dual
union all
select 2 goodsid,90 saqty from dual
)
select goods.goodsid,goods.goodsname,nvl(suqty,0) suqty,nvl(saqty,0) saqty from goods,su,sa where
goods.goodsid=su.goodsid(+) and su.goodsid=sa.goodsid(+)