怎么最高效的把oracle表大量数据按分区读出来?

我们现在有一个表,按日做分区,现在要读取60天的数据,也就是60个分区的数据,大概有几个G的数据量,怎么读取效率会高一些呢?
比如select A,B,C from table where day大于等于20170301 and day 小于20170501,然后fetch一条记录,做格式处理,写到文件里面,一直到数据读取完毕,耗时比较长。
请问该从哪些方面做优化呢?