快速获得销售订单最后一次修改的金额
如何用最快的查询速度获得销售订单最后一次修改的金额。
这是一个数据量非常大的查询。相当于历史数据,包括发货历史视图A,销售订单历史视图B等等数据,数据量非常大。估计有百万条。
结果——得到发货物料的数量,金额等数据。
做法——
发货物料的数量等数据在发货历史视图A里。有时间的限定,获得这段时间的订单号,行号以及数量等数据。
发货物料的金额的数据在销售订单视图B里。数据量仍然非常多,一个销售订单的历史数据有两行甚至多行,第一行是建立销售订单,第二行是修改销售订单的数据,可能还有第3行,第4行,根据修改的次数而定。
而我需要的是某一个销售订单最后一次修改的数据。不能重复。
这个数据按照大家的写法我用的是not exists。
这个查询没有时间的限定,需要通过与发货视图的订单、行号的关联来得到金额。
但由于数据量太大,10分钟还没算出来。其实,如果不需要金额,那么大约2分钟左右能得到结果。如果加入金额,但是不是取的最后一次修改的金额,就是说金额是重复的,也大约3-4分钟能得到结果。但用not exists取最后一次修改的金额,查询的时间就非常的长!
我不知道说明白没有。请大家给我一个思路,如何用最快的查询获得销售订单最后一次修改的金额!谢谢。
另外,这两个视图没有什么索引。