查询速度慢的很,都全部视图查询了,还是慢!
SELECT v_viem_bmzecx.fyysbmzeid,
v_viem_bmzecx.ysnd,
v_viem_bmzecx.xmid,
v_viem_bmzecx.ysname,
v_viem_bmzecx.csname,
v_viem_bmzecx.kzbs,
v_viem_bmzecx.ys_deptid,
v_viem_bmzecx.deptwz,
v_viem_bmzecx.deptname,
v_viem_bmzecx.zemoney,
v_viem_bmzecx.zjmoney ,
( SELECT sum( v_xzy_ysmx.zcmoney )
FROM v_xzy_ysmx
WHERE ( v_xzy_ysmx.zctime between :ls_start and :ls_end ) AND
( v_xzy_ysmx.ys_deptid = v_viem_bmzecx.ys_deptid ) AND
( substring(v_xzy_ysmx.xmid,1,6) = substring(v_viem_bmzecx.xmid,1,6) )
) as ysmoney,
( SELECT sum( v_xsy_ysmx.zcmoney )
FROM v_xsy_ysmx
WHERE ( v_xsy_ysmx.zctime between :ls_start and :ls_end ) AND
( v_xsy_ysmx.ys_deptid = v_viem_bmzecx.ys_deptid ) AND
( substring(v_xsy_ysmx.xmid,1,6) = substring(v_viem_bmzecx.xmid,1,6) )
) as zysmoney,
( SELECT sum( v_xzy_ysmx.zcmoney )
FROM v_xzy_ysmx
WHERE ( v_xzy_ysmx.zctime between :ls_start and :ls_end ) AND
( v_xzy_ysmx.ys_deptid = v_viem_bmzecx.ys_deptid ) AND
( v_xzy_ysmx.xmid = v_viem_bmzecx.xmid )
) as z_ysmoney,
( SELECT sum( v_xsy_ysmx.zcmoney )
FROM v_xsy_ysmx
WHERE ( v_xsy_ysmx.zctime between :ls_start and :ls_end ) AND
( v_xsy_ysmx.ys_deptid = v_viem_bmzecx.ys_deptid ) AND
( v_xsy_ysmx.xmid = v_viem_bmzecx.xmid )
) as z_zysmoney
FROM v_viem_bmzecx
WHERE v_viem_bmzecx.ysnd = :ls_ysnd and v_viem_bmzecx.ys_deptid = :ls_ysdeptid
麻烦看看代码那里要改进?
谢谢了