拆分PLSQL结果

时间:2012-04-20 06:25:58

标签: plsqldeveloper

我正在尝试使用PLSQL Developer从数据库中获取数据,需要获取的行总数超过150万行。当我试图一起获取数据时,这将花费很长时间。我要将它拆分为两个取出阶段,第一个,第1-1行,第二个阶段。第二个阶段。 我怎么能在PLSQL中做到这一点?

1 个答案:

答案 0 :(得分:2)

此选择使用分析功能为每一行编号,以便您可以按行号查询;

SELECT *
FROM
(
SELECT *,
       ROW_NUMBER() OVER(ORDER BY id_column_here) r
  FROM my_table
)
WHERE R<=100000;

您可以使用较小的行间隔来检索前1000然后检索下一个,依此类推:

SELECT *
FROM
(
SELECT *,
       ROW_NUMBER() OVER(ORDER BY id_column_here) r
  FROM my_table
)
WHERE R between 1000 and 2000;