数据未在特定缩放级别的情况下从mysql中拉出

时间:2014-03-06 15:33:50

标签: php mysql geolocation geospatial

命令在地理坐标下无法正常工作

Select * from table_name where loc_lng BETWEEN $ln2 AND $ln1 AND loc_lat BETWEEN $la2 AND $la1

当$ ln2小于$ ln1且$ la2小于$ la1时,代码工作正常,但当值$ ln1大于$ ln2且$ la1大于$ la2时,它会起作用。 ln和la是地理坐标,所以有时一个会比另一个大。

1 个答案:

答案 0 :(得分:0)

这是可以预料的。您需要其他逻辑来定义minLatitudemaxLatitudeminLongitudemaxLongitude BEFORE ,并将值传递给查询。

然后您的查询可以

Select * from table_name where loc_lng BETWEEN $minLongitude AND $maxLongitude AND loc_lat BETWEEN $minLatitude AND $maxLatitude