将大型Oracle表下载到csv文件

时间:2019-04-18 13:33:55

标签: oracle

我有一个很大的Oracle表,我想将其下载到一个csv文件中,但是太大了,无法一次性将该表加载到内存中。我想重复查询以加载前100,000条记录,然后加载下100,000条,依此类推。我的问题是确保每个查询都返回与以前不同的记录。

我使用下面所示形式的内部查询,其中A是主键,因此应保证顺序。

SELECT  A,  B, C, rownum rn FROM my_table   ORDER BY A  asc

我计划有一个外部查询,该查询使用WHERE子句为rn值范围选择此表的块。

问题在于,每次运行内部查询时,rn的顺序都与以前不同。

提取表中唯一块的最佳方法是什么?

1 个答案:

答案 0 :(得分:0)

您可以分页结果。

SELECT *
FROM my_table
ORDER BY A asc
OFFSET 10 ROWS FETCH NEXT 10 ROWS ONLY;