0

我有一个包含位置纬度和经度的数据库表。我得到以下值纬度,经度,minX,minY,maxX,maxY。我需要从数据库表中返回所有经纬度在该范围内的记录。

4

2 回答 2

1

每当您需要进行复杂的 SQL 查询时,您都需要使用PreparedStatement 。以下是一些伪代码,可让您了解您将要做什么:

String query = "SELECT * from `DBTableName` WHERE latitude >= ? AND latitude <= ? AND     
longitude >= ? AND longitude <= ?`";

PreparedStatement ps = connection.PrepareStatement(query);
ps.setLong(1, minX);
ps.setLong(2, maxX);
ps.setLong(3, minY);
ps.setLong(4, maxY); 
ResultSet rs = ps.executeQuery();

然后可以通过以下方式访问满足您查询的记录列表ResultSet

于 2013-05-14T08:36:44.803 回答
0

我希望我得到了这个问题。

尝试

SELECT * FROM locationTable
WHERE (latitude >= minX AND latitude =< maxX)
AND ( longitude >= minY AND longitude =< maxY)
于 2013-05-14T08:36:22.973 回答