我可以限制结果集中的行数吗? 我的表包含大约 800000 行,如果我在结果集中获取它们,这肯定会导致 OOM 异常。每行有 40 列。 我不想同时处理它们,但每行都将被过滤掉一些数据。
提前谢谢您。
最佳答案
类似下面的内容应该是一个 SQL 解决方案,但尽管效率相当低,因为每次您都必须获取越来越多的行。
假设您的 ORDER BY 基于 unique int
并且
您将一次获取 1000 行。
SET currenttop = 0;
SET cuurentid = 0;
SELECT * FROM YourTable t
WHERE t1.ID > @currentID AND (@currentid := t1.ID) IS NOT NULL;
LIMIT (@currenttop:=@currenttop+1000);
当然,您可以选择处理 Java 代码中的变量。
关于java - 如何从mysql java中获取有限的数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18918788/