我目前正在开发一个网络应用程序,它将根据许多不同的标准对社区进行评级,其中一个是来自当地加尔达站(爱尔兰警察局)的统计数据。我将客户端的纬度和经度值传递给Spring中的控制器,我想运行以下SQL查询,以便找到最近的警察局并返回相关统计信息。
Set @lat = x; // Local Variable for a latitude value
Set @lng = y; // Local Variable for a longitude value
SELECT * FROM garda_station
ORDER BY ((garda_station_latitude - @lat)*
(garda_station_latitude - @lat))+
((garda_station_longitude - @lng)*
(garda_station_longitude - @lng))
ASC LIMIT 1;
我正在尝试访问的garda_station表的结构如下
+-------------------------+--------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+-------------------------+--------------+------+-----+---------+----------------+
| garda_station_id | int(11) | NO | PRI | NULL | auto_increment |
| garda_station_latitude | double | NO | | NULL | |
| garda_station_longitude | double | NO | | NULL | |
| garda_station_name | varchar(255) | YES | | NULL | |
+-------------------------+--------------+------+-----+---------+----------------+
我正在将客户端的纬度和经度值通过AJAX请求传递给Spring项目中的Controller类。
@RequestMapping(value = "/results", method = RequestMethod.POST)
public @ResponseBody
String Submit(@RequestParam("latitude") String latitude,@RequestParam("longitude") String longitude) {
// I'm printing them for now to ensure they have been sent from the client side
System.out.println(latitude + "" + longitude);
return "/";
}
这是我对spring项目的第一次重大尝试,所以如果有任何其他建议我如何进行这个SQL查询,我很乐意加热你的建议。