select cl.areaclname,
cu.custcode,
cu.custname,
(case
when zb.djlxbm = 'D0' then
fb.jfbbje * -1
when zb.djdl = 'sk' then
fb.dfbbje
else
0
end) as skje,
decode(t2.hxje,null, 0,t2.hxje) as hxje,
(case
when zb.djlxbm = 'D0' then
fb.jfbbje * -1
when zb.djdl = 'sk' then
fb.dfbbje
else
0
end) - decode(t2.hxje, null,0,t2.hxje) as hxye
from arap_djfb fb
left outer join arap_djzb zb on fb.vouchid = zb.vouchid
left outer join bd_invbasdoc inv on fb.cinventoryid = inv.pk_invbasdoc
left outer join (select sum(case
when djdl = 'sk' and zy = 'UPP20060504-000238' then
clb.dfclbbje
else
clb.jfclbbje2
end) as hxje,
fb_oid
from arap_djclb clb
where clb.clrq <='2012-12-31'
group by fb_oid ) t2 on fb.fb_oid = t2.fb_oid
left outer join bd_cumandoc cm on fb.ksbm_cl = cm.pk_cumandoc
left outer join bd_cubasdoc cu on cm.pk_cubasdoc = cu.pk_cubasdoc
left outer join bd_areacl cl on cu.pk_areacl = cl.pk_areacl
where ((zb.djlxbm = 'D0' and inv.invcode like '11%' and fb.zyx9 = 'Y') or
(zb.djdl = 'sk'))
and zb.djrq <='2012-12-31'
and fb.dwbm = '1018'
and ((case
when zb.djlxbm = 'D0' then fb.jfbbje * -1
when zb.djdl = 'sk' then fb.dfbbje
else 0
end) - decode(t2.hxje,null,0,t2.hxje) <> 0)
and fb.dr = 0 执行没有问题,就是decode(t2.hxje,null,0,t2.hxje)提取不到数值,我怀疑是t2和fb两个表连接的问题导致的。跪求高手解决在线等数据库join
cu.custcode,
cu.custname,
(case
when zb.djlxbm = 'D0' then
fb.jfbbje * -1
when zb.djdl = 'sk' then
fb.dfbbje
else
0
end) as skje,
decode(t2.hxje,null, 0,t2.hxje) as hxje,
(case
when zb.djlxbm = 'D0' then
fb.jfbbje * -1
when zb.djdl = 'sk' then
fb.dfbbje
else
0
end) - decode(t2.hxje, null,0,t2.hxje) as hxye
from arap_djfb fb
left outer join arap_djzb zb on fb.vouchid = zb.vouchid
left outer join bd_invbasdoc inv on fb.cinventoryid = inv.pk_invbasdoc
left outer join (select sum(case
when djdl = 'sk' and zy = 'UPP20060504-000238' then
clb.dfclbbje
else
clb.jfclbbje2
end) as hxje,
fb_oid
from arap_djclb clb
where clb.clrq <='2012-12-31'
group by fb_oid ) t2 on fb.fb_oid = t2.fb_oid
left outer join bd_cumandoc cm on fb.ksbm_cl = cm.pk_cumandoc
left outer join bd_cubasdoc cu on cm.pk_cubasdoc = cu.pk_cubasdoc
left outer join bd_areacl cl on cu.pk_areacl = cl.pk_areacl
where ((zb.djlxbm = 'D0' and inv.invcode like '11%' and fb.zyx9 = 'Y') or
(zb.djdl = 'sk'))
and zb.djrq <='2012-12-31'
and fb.dwbm = '1018'
and ((case
when zb.djlxbm = 'D0' then fb.jfbbje * -1
when zb.djdl = 'sk' then fb.dfbbje
else 0
end) - decode(t2.hxje,null,0,t2.hxje) <> 0)
and fb.dr = 0 执行没有问题,就是decode(t2.hxje,null,0,t2.hxje)提取不到数值,我怀疑是t2和fb两个表连接的问题导致的。跪求高手解决在线等数据库join
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货