优化存储过程的本质是优化里面的SELECT语句。EXPLAIN ,然后自己分析。

解决方案 »

  1.   

    select * from t_dBXMX union all select * from t_dBXMX_bk
    把这个用
      select MXID,CPBM,XFSL,MXLX,JZDJ,DJBM,SSCP ,XFDW from t_dBXMX 
    union all 
      select MXID,CPBM,XFSL,MXLX,JZDJ,DJBM,SSCP,XFDW  from t_dBXMX_bk
    来代替是不是会快一点?这个存储过程在用客户传过来的数据库,一两秒就可以查出来了.接下来几天查也是一两秒就出来.
    可给客户用,第一天就可以一两秒就可以查出来,第二天以后都要20分钟才查得出来.晕死!还有,我去客户那里发现查不出来.然后我就drop 掉,然后也是create这个存储过程,
    也是,一两秒就可以查出来了,也是只能用一两天.第三天查就要20分钟左右了.
      

  2.   

    看的眼花,很长也很复杂,按你上面的说法,发现查不出来.然后我就drop 掉,然后也是create这个存储过程就正常了,要不要程序里试下在每次执行前drop,再create
    这样也不行,达不到效果,试下改成视图看看