报表效率问题优化

1.处理业务逻辑的程序,不应该在birt中直接处理,应把业务逻辑写入存储过程,存储过程在处理逻辑后,将数据放入一张数据库表,birt从该数据库表中进行查询;

2.在写存储过程的时候,尽量别用公共自定义函数(之前为了方便开发,方便统一,而做的函数);例:获取会计日,直接在存储过程中定义一个变量,用来接受会计日,在此处调用一次即可,如果公共函数写在业务逻辑中并且某张表的数据几十万,每条数据的查询,都会调用一次这个函数,导致性能急剧下降。

3.写关联条件的时候,别用substr或者left,right这些关键字关联,因为这样关联也是每一条记录都会截取一次,导致效率过慢;

4.少用distinct等关键字,如果仅仅是为了去除重复,还有很多其他方法,分组,开窗都可以实现;

5.当某些逻辑过于复杂的时候,可以分临时表,在存储过程中,定义一些临时表,以进行加工。

以上是在开发中遇到的一些效率问题。

END

(0)

相关推荐