我有大量数据,需要按组进行处理。
在图像中具有表结构java - 按组获取行MySQL Java-LMLPHP

如何按组检索它们? (首先获取组1,进程。接下来,获取组2,进程..依此类推。)分组基于应该相等的pos列。

我一直在阅读有关对同一张表进行基本连接的引用,但是对我来说这是不可能的,因为它返回的数据量很大,这将导致OutOfMemoryError。

最佳答案

您将需要两个光标,一个用于选择不同的组,另一个用于分别处理每个组。

 //Assuming you have a Connection conn;
 PreparedStatement groupsPS =
     conn.prepareStatement("SELECT distinct pos from yourtable");
 ResultSet groupsRS = groupsPS.executeQuery();
 PreparedStatement groupdataPS =
     conn.prepareStatement("SELECT * from yourtable where pos = ?");
 ResultSet groupdataRS = null;

 while(groupsRS.next())
 {
    groupdataPS.setString(1, groupsRS.getString("pos"));
    groupdataRS = groupdataPS.executeQuery();
    while(groupsRS.next())
    {
      //process your data here
    }
    groupdataRS.close();
 }
 groupsRS.close();
 groupdataPS.close();
 groupsPS.close();

关于java - 按组获取行MySQL Java,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/34221162/

10-10 00:59