嘿,所有... 我已经接受了全球搜索项目的任务。 他们想要搜索图片的数据库,所有这些数据库都在mysql数据库中使用每张图片的long/lat 引用。按照经度和纬度排序mysql表上的结果,然后是纬度,而不是圆形半径
但是,他们的搜索标准有点特定。
简化表结构是: id
INT汽车股份有限公司主要 imagePath
VARCHAR 255 long
十进制12,7 lat
十进制12,7
我需要提供SQL语句开始长/纬度位置。 然后,他们想要接收34张图像,从最初的 长参考向南。一旦他们达到-90(地球的底部),弹出 超过1度向右/东,并搜索到北方90和 重复,直到找到34个图像。
什么让我感到困惑的是如何计算负增加变化..确保我们沿着地球'长'参考上下循环。
有没有人以前做过这个..? 我想在单个查询中做到这一点... (我已经看到了如何取得基于圆的半径的结果,但我的客户..保佑他们..不想这样做)
好的,回到谷歌!
思考...
的Tris ...
提示:转换为整数并使用模运算创建排序顺序乘数,然后按经度排序,然后按纬度乘以排序顺序乘数。但是还有一些边缘情况需要照顾(等纬度和潜在的环绕+180 - > -180)。 – 2010-11-17 21:03:37