发现了,原来写错了
where pj_rk.rkbh=pj_kc.rkbh and pj_ck.ckbh=pj_kc.rkbh and pj_rk.rq>='2005-01-01'
where pj_rk.rkbh=pj_kc.rkbh and pj_ck.rkbh=pj_kc.rkbh and pj_rk.rq>='2005-01-01'
谢谢,可以执行了,但是我的数据为什么不对呢?
select pj_rk.rkbh,pj_rk.rq,(pj_rk.rksl-pj_rk.thsl) as rkrksl,pj_rk.cbje,pj_rk.jjje,pj_kc.kcsl,pj_kc.cbje,
pj_kc.jjje,sum(pj_ck.cksl-pj_ck.tlsl) as ckcksl,sum(pj_ck.cbje-pj_ck.tlcbje) as ckcbje,sum(pj_ck.jjje-pj_ck.tljjje) as ckjjje
from pj_rk,pj_kc,pj_ck
where pj_rk.rkbh=pj_kc.rkbh and pj_ck.ckbh=pj_kc.rkbh and pj_rk.rq>='2005-01-01'
group by pj_rk.rkbh,pj_rk.rq,(pj_rk.rksl-pj_rk.thsl),pj_rk.cbje,pj_rk.jjje,pj_kc.kcsl,pj_kc.cbje,pj_kc.jjje
having (pj_rk.rksl-pj_rk.thsl)>pj_kc.kcsl+sum(pj_ck.cksl-pj_ck.tlsl)
这样列出的数据,我在程序中发现,并没有错误啊?
select rk.rkbh,rk.rksl,rk.cbje,rk.jjje,kc.kcsl,kc.cbje,kc.jjje,sum(cksl),sum(ck.cbje),sum(ck.jjje)
from rk,kc,ck
where rk.rkbh=kc.rkbh and ck.ckbh=kc.rkbh
group by rk.rkbh,rk.rksl,rk.cbje,rk.jjje,kc.kcsl,kc.cbje,kc.jjje
having rk.rksl<>kc.kcsl+sum(cksl)
select rk.rkbh,rk.rksl,rk.cbje,rk.jjje,kc.kcsl,kc.cbje,kc.jjje,sum(cksl),sum(cbje),sum(jjje)
from rk,kc,ck
where rk.rkbh=kc.rkbh and ck.ckbh=kc.rkbh and rk.rksl<>kc.kcsl+sum(cksl)
group by rk.rkbh,rk.rksl,rk.cbje,rk.jjje,kc.kcsl,kc.cbje,kc.jjje
select rk.rkbh,rk.rksl,rk.cbje,rk.jjje,kc.kcsl,kc.cbje,kc.jjje,[sum(cksl)],[sum(cbje)],[sum(jjje)]
from rk,kc,ck
where rk.rkbh=kc.rkbh and ck.ckbh=kc.rkbh and rk.rksl<>kc.kcsl+ck.[sum(cksl)]
想按rkbh求和sum(cksl),sum(cbje),sum(jjje)怎么写呢?
select rk.rkbh,rk.rksl,rk.cbje,rk.jjje,kc.kcsl,kc.cbje,kc.jjje,[sum(cksl)],[sum(cbje)],[sum(jjje)]
from rk,kc,ck
where rk.rkbh=kc.rkbh and ck.ckbh=kc.rkbh and rk.rksl<>kc.kcsl+ck.[sum(cksl)]