[英]Data is return with a random ordering from postgresql
我们的Java程序正在从postgreSQL中随机获取数据。 如何解决? 为了获得顺序的数据应该怎么做?
我们在PostgreSQL中有一个名为杂货店的表,该表的条目从0到99。java代码正在以随机顺序获取整个表。
connection = DriverManager.getConnection(
"jdbc:postgresql://localhost/test", "postgres",
"manafara");
connection.setAutoCommit(false);
Statement st = connection.createStatement();
String sql = "Select * from grocery";
ResultSet rs = st.executeQuery(sql);
Statement st1 = connection.createStatement();
ResultSet rs1 = st1.executeQuery("Select COUNT(*) AS TOTAL from grocery");
int n = 0;
while (rs1.next()) {
n = rs1.getInt("TOTAL");
}
System.out.println("Count: " + n);
int a = 0;
Double db[][] = new Double[n][2];
while (rs.next()) {
db[a][0] = (double) rs.getInt(4);
db[a][1] = rs.getDouble(6);
a++;
}
报价文件 :
如果未给出ORDER BY,则以系统认为最快的顺序返回行。
这实际上意味着,如果没有ORDER BY
,则根本无法保证行将以相同的顺序从一个执行转移到另一个执行。
如果您需要一遍又一遍地获取相同顺序的行,则需要在查询中添加ORDER BY
子句。 在您的情况下,可能是这样的:
select * from grocery order by id
列id
值必须唯一,以确保在获取数据时行的顺序相同。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.