比如我现在要从数据库表中取近10天的数据,用于显示图表。但是表中近10天的数据不一定都有。比如只有近3天或者间隔着有几天的数据。那么请问我怎么把其他没数据的补0.数据库中有nvl函数用于补0,那是用left join做到的。但是我这个没有基础信息表用来做“left”,而且我想,表数据量大的话这样效率会如何?各位大侠有没有好方法,在程序里控制的话如何实现方便一些呢?欢迎大家多谈想法,发表有意义内容,参与讨论都给分哈。

解决方案 »

  1.   

    如果没有基础信息表来做left join的话,会比较麻烦,要么就是在程序中把数据按天再处理下。数据量大或者不大,1、要看你索引做的怎么样;2、要看你所汇总的数据规模如何。
    所以不能简单的说效率会怎么样。
      

  2.   

    nvl实质上跟left join没有关系,只是你的业务好像有点关系把最近10天的日期用dateadd查出来当临时表,left join数据库中的数据,nvl函数补0