命令在地理坐标下无法正常工作
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是地理坐标,所以有时一个会比另一个大。
答案 0 :(得分:0)
这是可以预料的。您需要其他逻辑来定义minLatitude
,maxLatitude
,minLongitude
和maxLongitude
BEFORE ,并将值传递给查询。
然后您的查询可以
Select * from table_name where loc_lng BETWEEN $minLongitude AND $maxLongitude AND loc_lat BETWEEN $minLatitude AND $maxLatitude